Mysql中使某个用户只能访问指定的数据库

原文: http://blog.csdn.net/u010514052/article/details/51104659


  1. 使用navicat 
    1)使用root用户新建连接 
    这里写图片描述

    2)新建MySQL用户 
    这里写图片描述

    3)点击权限,选择添加权限,出现mysql中已存在的数据库列表,选择你要为该新建用户开放的数据库,此处选择“test”数据库,选择一些必要的权限信息,确定 
    这里写图片描述

    4)查看新建用户对数据库的操作权限,如下图 
    这里写图片描述

    5)很重要的一点,别忘记保存!

    6)然后新建连接,输入用户名和密码,打开连接,则新建的那个用户只能看到为他分配的那个数据库

    2.命令行实现 
    1) 进入mysql的bin目录

    mysql -uusername -ppassword
    • 1
    • 1

    username为用户名,password为密码,一般创建用户的话,都使用 root用户

    2)登录成功后,进入mysql数据库

     use mysql
    • 1
    • 1

    3) 创建新用户

    CREATE USER 'test02'@'localhost' IDENTIFIED BY 'test';
    • 1
    • 1

    ‘test02’为新创建用户的用户名,’test’为用户密码

    4) 为新用户赋予权限

    GRANT SELECT, INSERT, UPDATE, REFERENCES, DELETE, CREATE, DROP, ALTER, INDEX, CREATE VIEW, SHOW VIEW ON `test`.* TO 'test02'@'localhost';
    • 1
    • 1

    ON后面的‘test’为数据库名,TO后面的 ‘test02’表示用户, ‘localhost’表示只能本地访问,如果 想让所有IP都可以访问,可以将localhost换成 ‘*’星号

    5) 刷新权限

    flush privileges;
    • 1
    • 1

个人的一些经验,可能有些地方解释的不够清楚,也可能还有些许错误,请各位大牛批评指正,谢谢!

201557120536129.jpg (699×737)


你可能感兴趣的:(mysql)