什么是build议的Linux用户在LAMP下创buildMySQL数据库?

我试图build立一个简单的LAMP系统,同时保持一些基本的安全性。 如果我想创build一个MySQL来被PHP访问,那么在用户应该创build数据库的时候呢? 任何对最佳实践的参考都将大大受益。

谢谢!

假设你运行整个堆栈,没有理由不运行每个应用程序作为自己的用户。 您将不得不以root或其他特权用户身份创build帐户,但是您可以更改root用户名 – 请参阅此处的第4.5步或创build具有正确权限的新用户 ,但我从未见过任何人后者。

顺便说一句,你可能还想限制mysql服务器在防火墙级别监听本地主机,如果你需要做任何事情,你将不得不ssh进入,但它会降低可能性。

你似乎指的是mysql用户,而不是系统用户,但是你对LAMP堆栈的引用build议对mysql系统用户做一个简短的评论…

通常对于生产部署 ,您将从分发包中安装mysql,apache,PHP / Perl,因此您将运行包安装命令,例如apt-get install mysql-server apache2 phpyum install httpd mysql-server php53用户或某个用户​​使用sudo权限。

安装处理configuration用户apache和mysql为运行的服务。 您可能会注意到/ var / lib / mysql中的文件由mysql用户拥有,并且mysqld进程由mysql拥有。

在mysql中,用户需要“ CREATE ”权限来创build新的数据库,默认情况下,这个权限被分配给root用户。

我通常为root设置一个长(16个字符)的密码,并将其存储在脱机文件中,并创build第二个用于日常操作的用户“dba”。 每个数据库都有一个只有写入权限的用户帐户,root和dba用户仅限于“localhost”

  1. 这里是一个关于mysql用户pipe理策略的好文章
  2. 这是一个更一般的文章,但有一个关于MySQL用户策略的部分