Please read "Security" section of the manual to find out how to run mysqld as root!错误解决

来源:互联网 发布:未来的中国是一个正知 编辑:程序博客网 时间:2024/05/24 00:50

转载自http://blog.csdn.net/jubincn/article/details/6725582

在虚拟机中安装了CentOS时安装了Nami版的Rendmine,没有设置MySQL自动启动,手动启动时出现 Please read “Security” section of the manual to find out how to run mysqld as root!错误,根据提示,查了 /opt/redmine-1.2.1-1/mysql/docs/mysql.info的Security部分,发现是因为MySQL为了安全,不希望root用户直接启动mysql。下面是文档中的原文:

*Never run the MySQL server as the Unix root' user. This is
extremely dangerous, because any user with the
FILE’ privilege is
able to cause the server to create files as root' (for example,
~root/.bashrc’). To prevent this, *Note mysqld': mysqld. refuses
to run as
root’ unless that is specified explicitly using the
--user=root' option.
永远不要使用root帐号启动MySQL Server。这样做很微笑,因为拥有FILE'权限的用户会使得MySQL Server使用root帐户创建文件(比如,~root/.bashrc),为了防止类似的事情发生,mysqld默认拒绝用户使用root帐户启动,但root用户可以通过在命令后面加上"--user=root"选项来强行启动mysqld。
*Note
mysqld’: mysqld. can (and should) be run as an ordinary,
unprivileged user instead. You can create a separate Unix account
named mysql' to make everything even more secure. Use this
account only for administering MySQL. To start *Note
mysqld’:
mysqld. as a different Unix user, add a user' option that
specifies the user name in the
[mysqld]’ group of the `my.cnf’
option file where you specify server options. For example:

      [mysqld]      user=mysql

与使用root用户启动mysqld相比,更好的方法是使用一个普通的、没有高级权限的用户帐户允许mysqld,例如创建一个名为mysql的用户帐户来专门管理MySQL。使用其帐启
动MySQL的方法是在mysqld命令后面加上一个用户选项,这个用户属于mysqld用户组并且位于my.cnf配置文件中。例如在创建mysql帐户后,可以将下面的内容添加到my.cnf文
件中:
[mysqld]
user=mysql
This causes the server to start as the designated user whether you
start it manually or by using *Note mysqld_safe': mysqld-safe. or
*Note
mysql.server’: mysql-server. For more details, see *Note
changing-mysql-user::.
这个选项可以使你使用指定的用户帐户启动MySQL,无论是mysqld_safe还是mysql.server命令,都可以使用。
Running *Note mysqld': mysqld. as a Unix user other thanroot’
does not mean that you need to change the root' user name in the
user’ table. _User names for MySQL accounts have nothing to do
with user names for Unix accounts_.
不要使用Unix的root用户启动并不意味着你要修改MySQL中的user表中的root用户名,因为Unix的root帐户和MySQL的root帐户没有什么关系。

阅读全文
0 0