首页 | 编程语言 | 网站建设 | 游戏天堂 | 冲浪宝典 | 网络安全 | 操作系统 | 软件时空 | 硬件指南 | 病毒相关 | IT 认证
软讯网络 > 冲浪宝典 > 网络资源 > MySql 用户安全
【标  题】:MySql 用户安全
【关键字】:MySql
【来  源】:http://www.cublog.cn/u/15511/showart.php?id=101248

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.* to
javapro@localhost identified 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。

法规遵从在中国存储市场发酵:【上一篇】
mysql权限问题:【下一篇】
【相关文章】
  • JSP+PHP+APACHE+TOMCAT+MYSQL简易配置
  • 使用属性文件为mysql数据库配连接池proxool
  • 编译安装apache2+php5+mysql4+ZendOptimizer+Cronolog简易文档
  • Windows 的命令行来操作 MySQL 的指令
  • Mysql 内部函数的使用
  • 使用tomcat4.1.31和mysql 配置数据源
  • mysql数据库常用导出导入命令的几个用例
  • 配置Apache2+PHP5+MYSQL5
  • 《MySQL权威指南》读书笔记
  • 常用mysql的字符串函数
  • 【随机文章】
  • X windows系统使用指南(十二)
  • 今天被办公室的新桌子熏的眼睛痛
  • 菜鸟:如何选择合适漏洞扫描工具
  • 在Oracle8中通过DBLink存取Oracle9中Timestamp类型的问题
  • Flex2 Tree绑定XML问题
  • 项目管理之我谈
  • gcc支持c++的创建和删除自由内存的“new
  • 函数重载、覆盖
  • OR Mapping技术--软件工程的死敌
  • 也论流氓软件
  • 【相关评论】
    没有相关评论
    【发表评论】
    姓名:
    邮件:
    随机码*
    评论*
          
    |  首 页  |  版权声明  |  联系我们   |  网站地图  |
    CopyRight © 2004-2007 软讯网络 All Rigths Reserved.