对于一个刚安装好的 mysql,其安全性是很差的,因为任何使用 mysql 的用户都能使用和更改数据库的资料,因此需要为 mysql 的 root 用户设置口令(mysql 的 root 与 linux 的 root 是两回事,它们之间没有任何关系).
为 root 设置口令需要用到 mysqladmin 这个命令,因为我安装的 mysql 在 /usr/local 下,因此,我到目录 /usr/local/bin 下运行这个命令:
#./mysqladmin -u root password "passwd"
"passwd" 是我为 root 设置的口令明文;
好了,我在 root 用户下运行 mysql: #mysql
被拒绝了,再用下面的命令运行 mysql: #mysql -uroot -p 出现:Enter password:
我输入密码后,成功登入了,因此不必再担心有其他用户随意使用数据库了,接着又出现问题了,root 权限在 mysql 里有控制一切的权利,当有用户请求使用数据库时,把 root 的密码告诉用户也是很危险的,所以我考虑在数据库再设置其他的用户帐号,并将适当的权限开放给他.
创建新用户和授权,需要用到下面这个语法: grant privileges on what to user identified by "passwd" with grant option
privileges 分配权限 what 权限的应用级别 user 用户 passwd 密码明文 with grant option 使用这个子句时将允许用户将其权限分配给他人.
我准备创建 team 的用户,并只允许他使用 team 数据库的权限,所以我使用了以下的名令: #mysql -uroot -ppasswd 先运行 mysql
>grant all on team.* to team@localhost identified by "team";
在这我给了 team 用户控制 team 数据库的所有权限,并且不允许他分配权限给其它人.
这样当用户请求使用数据库时,我只需将 team 用户的密码交给他就行了.
另外在 web 页控制 mysql 数据库的工具 phpMyAdmin 是个非常强大而又危险的工具,为了数据库的安全,最好在使用这个工具时,让用户通过认证以策安全,我会在介绍 apache 服务器配置时介绍如何设置认证.
你可以有2个不同的方法增加用户:通过使用GRANT语句或通过直接操作MySQL授权表。比较好的方法是使用GRANT语句,因为他们是更简明并且好像错误少些。
下面的例子显示出如何使用mysql客户安装新用户。这些例子假定权限根据以前的章节描述的缺省被安装。这意味着为了改变,你必须在mysqld正在运行同一台机器上,你必须作为MySQL root用户连接,并且root用户必须对mysql数据库有insert权限和reload管理权限。另外,如果你改变了root用户口令,你必须如下的mysql命令指定它。
上一篇:搭建企业邮局
下一篇:快速开启对方机器(win2000)的telnet服务
|