mysql 心情锁_MySql 用户安全

Windows默认安装好MySql以后需要做一些安全措施。首先像这样:

mysql> use mysql;

Database changed

mysql> select Host,User,Password,Select_priv,Grant_priv from user;

+------+------+-----------+-------------+------------+

| Host | User | Password  | Select_priv | Grant_priv |

+------+-------+----------+-------------+------------+

| localhost | root |      | Y           | Y          |

|  buider   | root |      | Y           | Y          |

| localhost |      |      | Y           | Y          |

|           |      |      | N           | N          |

+-------+---+------+------+-------------+------------+

4 rows in set (0.00 sec)

默认情况下,可以不要任何用户、口令登陆MySql;来自localhost的root用户是没有口令的,一旦有人伪装成来自buider的root用户,安全性就会受到挑战。

接着需要删除多余的用户:

mysql> delete from user where user='';

mysql> delete from user where host='buider';

默认root用户的空密码也是必须修改:

mysql> update user set password=password('123456') where user='root';

mysql> flush privileges;

这样,MySQL数据库root用户的口令被改成123456了。其中最后一句命令flush privileges的意思是强制刷新内存授权表,否则用的还是缓冲中的口令,这时非法用户还可以用root用户及空口令登陆,直到重启MySQL服务器。

再来看看:

mysql> select Host,User,Password,Select_priv,Grant_priv from user;

+-----------+---------+------------------+-------------+------------+

| Host      | User    | Password         | Select_priv | Grant_priv |

+-----------+---------+------------------+-------------+------------+

| localhost | root    | 565491d704013245 | Y           | Y          |

+-----------+---------+------------------+-------------+------------+

1 rows in set (0.03 sec)

利用root用户登陆是不明智的,因为它拥有太大的权限,在实际使用时应该会出现安全问题,应该再建立一个用户,让他只要select、insert、update、delete这些基本权限即可。

像这样建立一个叫javapro的用户密码为123456,它只能来自localhost并操作process下面所有的表:

mysql> grant select,insert,update,delete on process.* tojavapro@localhostidentified by "123456";

Query OK, 0 rows affected (0.00 sec)

让我们再来检查一下:

mysql>  select Host,User,Password,Select_priv,Grant_priv from user;

+-----------+---------+------------------+-------------+------------+

| Host      | User    | Password         | Select_priv | Grant_priv |

+-----------+---------+------------------+-------------+------------+

| localhost | root    | 565491d704013245 | Y           | Y          |

| localhost | javapro | 565491d704013245 | Y           | N          |

+-----------+---------+------------------+-------------+------------+

2 rows in set (0.00 sec)

好,在程序中,我们只需要用javapro用户对我们的工作表process进行基本操作就行了。

另外注意一下数据库备份的问题,mysqldump -u root -p mysql>samp.db.txt,在DOS命令台(不是mysql)下运行之,可以在bin目录下生成mysql数据库下所有的表文件(samp.db.txt)。导入最好使用EMS MySql Manager。

请注意!引用、转贴本文应注明原作者:Rosen Jiang 以及出处:http://www.blogjava.net/rosen

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值