mysql 没有在服务器启动时自动启动,但我可以手动启动,只要使用“/etc/init.d/mysql.server”以用户“mysql”身份登录,我在日志中收到的错误是
InnoDB: Operating system error number 13 in a file operation.
InnoDB: The error means mysqld does not have the access rights to
InnoDB: the directory.
InnoDB: File name ./ibdata1
InnoDB: File operation call: 'create'.
InnoDB: Cannot continue operation.
所以问题是我如何授予“root”和mysql启动@boot的权限。
提前感谢任何帮助。p.
答案1
您的 mysql 数据目录很可能不属于 mysql 用户,因此它无权处理其自己的文件。您必须找出 InnoDB 数据目录的位置(innodb_data_file_path
设置),然后在该文件/目录中查找并修复权限。您可能希望对它们使用模式 700,因为除了 mysql 之外,其他任何人都无权访问它们。
答案2
使用 perror 轻松找出 mysql 错误
$ perror 13
OS error code 13: Permission denied