mysqld忽略my.cnf(Ubuntu 16.04服务器上的mysql 5.6)

时间:2016-09-12 15:21:23

标签: mysql ubuntu-16.04 mysql-5.6

我使用这种方法在Ubuntu Server 16.04上安装了mysql 5.6:https://askubuntu.com/questions/762384/install-mysql-5-6-on-ubuntu-16-04

但是我无法让mysqld读取/etc/mysql/my.cnf

具体来说,我正在尝试为Atlassian Confluence安装设置它,我必须在这些设置中添加:

[mysqld]
character-set-server=utf8
collation-server=utf8_bin
default-storage-engine=INNODB
max_allowed_packet=256M
innodb_log_file_size=2G

我已经检查了mysqld --help --verbose并且它的路径中有my.cnf。这是相关的输出:

Default options are read from the following files in the given order:
/etc/my.cnf /etc/mysql/my.cnf /usr/etc/my.cnf ~/.my.cnf The following
groups are read: mysqld server mysqld-5.6

我知道mysql正在读取文件,因为如果我将[mysqld]更改为[mysql],当我运行mysql --print-defaults时参数被正确打印如果我在文件中放错了行,mysql将无法启动并告诉我语法错误在哪里。但是,mysqld不会报告mysqld --print-defaults的任何参数,也不会告诉我文件中的语法错误。

我还能尝试什么?

解决:

my.cnf是一个象征性的链接。我删除它并使其成为一个实际的文件。现在mysqld --show-defaults正在运作!显然mysql将遵循符号链接,但mysqld不会。很高兴知道。

2 个答案:

答案 0 :(得分:7)

my.cnf是一个象征性的链接。我删除它并使其成为一个实际的文件。现在mysqld --show-defaults正在运行。显然mysql将遵循符号链接,但mysqld不会。

答案 1 :(得分:0)

对于mysqld,因为我知道只有硬链接才有效。或者你可能只是在原始的my.cnf文件中有错误的许可,你可以在其中放置符号链接。