在Windows上,您可以使用普通用户帐户作为Windows服务运行服务器。
在Linux上,对于使用MySQL存储库或RPM包执行的安装,MySQL服务器mysqld应该由当地开始吗mysql
操作系统用户。MySQL存储库中包含的init脚本不支持由其他操作系统用户启动。
在Unix(或Linux上使用tar.gz
packages), MySQL服务器mysqld可以由任何用户启动和运行。但是,您应该避免将服务器作为Unix运行根
用户的安全原因。改变mysqld以普通无特权Unix用户的身份运行user_name
,你必须做到以下几点:
如果服务器正在运行,则停止服务器(使用mysqladmin关闭).
更改数据库目录和文件,以便
user_name
有权限读写其中的文件(您可能需要像Unix根
用户):$> chown -Ruser_name/ / / mysql / datadir路径
如果不这样做,服务器在以身份运行时将无法访问数据库或表
user_name
.如果MySQL数据目录中的目录或文件是符号链接,
乔恩- r
可能不符合符号链接。如果没有,您还必须遵循这些链接并更改它们所指向的目录和文件。以用户身份启动服务器
user_name
.另一种选择是开始行动mysqld作为Unix根
用户和使用——用户=
选择。mysqld开始,然后切换到以Unix用户运行user_name
user_name
在接受任何连接之前。若要在系统启动时以给定用户自动启动服务器,请通过添加
用户
选项。(mysqld)
一组/etc/my.cnf
选项文件或my.cnf
服务器数据目录中的选项文件。例如:(mysqld)用户=user_name
如果您的Unix机器本身不安全,您应该为MySQL分配密码根
拨款表中的账户。否则,在该计算机上具有登录帐户的任何用户都可以运行mysql拥有——用户=根
选项,执行任意操作。(在任何情况下为MySQL帐户分配密码都是一个好主意,但当服务器主机上存在其他登录帐户时尤其如此。)看到第3.4节,“保护初始MySQL帐户”.