我有一台 Ubuntu 16.04 服务器 (VPS),我在其上安装了 MariaDb 10.1 (按照医生说的做吗)。我想配置数据库服务器,以便 innodb 可以使用 2-4GB 内存,所以我尝试my.cnf
在 中找到示例,/usr/share/mysql/
但一个也没有(只有这些)。我在哪里可以找到示例配置以及如何使它们成为实际配置?我读到目录/etc/mysql/mysql.conf.d/
应该包含mysqld.cnf
,但对我来说只有这些文件:
50-client.cnf 50-mysql-clients.cnf 50-mysqld_safe.cnf 50-server.cnf 50-server.cnf.backup
哪一个是活跃的?我猜没有。
我不需要任何特殊的东西,这就是为什么我只想实现它my-huge.cnf
并完成它。
答案1
所有这些配置都已应用。以下是完整的目录结构:
$ tree -f /etc/mysql
/etc/mysql
├── /etc/mysql/conf.d
│ ├── /etc/mysql/conf.d/mariadb.cnf
│ └── /etc/mysql/conf.d/mysqld_safe_syslog.cnf
├── /etc/mysql/debian.cnf
├── /etc/mysql/debian-start
├── /etc/mysql/mariadb.conf.d
└── /etc/mysql/my.cnf
一切都从 /etc/mysql/my.cnf 开始,其结尾如下:
#
# * IMPORTANT: Additional settings that can override those from this file!
# The files must end with '.cnf', otherwise they'll be ignored.
#
!includedir /etc/mysql/conf.d/
这意味着包含该目录下的所有文件。文件按字母顺序读取,因此50-
使用诸如 之类的前缀来指定顺序。
该系统的优点在于,Ubuntu 也将其用于许多其他配置,可以安装软件包更新(因此也是默认配置),而不会与您的更改和/或添加冲突。它还有助于记住您对这些文件所做的实际更改 - 因为您没有进行任何更改,而只是创建新文件。