mrbear 发表于 2018-9-29 07:33:34

mysql创建用户以及授权

  默认用户有root超级管理员,要做一个网站,要连接mysql要一个用户名和密码,不可能是root,防止误操作。Mysql服务里面可以跑多个库,所以需要给单独的用户作一些授权,只需要他对某一个数据库或者某个数据库的某个表有权限。

  grant all on . to 'user1'>  1.mysql> grant all on . to 'user1'@'127.0.0.1'>.前面这个表示库名,后面是表。Ip也可以使用%表示所有的ip,
  Query OK, 0 rows affected (0.63 sec)
  2.# mysql -uuser1 -p123 -h127.0.0.1//用户登录。如果授权ip是localhost那么可以不用-h

  3.mysql> grant all on db1.* to 'user1'@'192.168.222.%'>  4.# mysql -uuser1 -p1 -h192.168.222.51
  5.grant SELECT,UPDATE,INSERT on db1. to 'user2'@'192.168.133.1'>

  6.grant all on db1. to 'user3'@'%'>  7.show grants;//查看当前用户的授权
  mysql> show grants; //查看权限必须进入要查询的用户里面
  +-------------------------------------------------------------------------------+
  | Grants for user1@192.168.222.%                                                |
  +-------------------------------------------------------------------------------+

  | GRANT USAGE ON . TO 'user1'@'192.168.222.%'>  | GRANT ALL PRIVILEGES ON db1.* TO 'user1'@'192.168.222.%'                  |
  +-------------------------------------------------------------------------------+
  2 rows in set (0.00 sec)
  mysql> select user();
  +----------------------+
  | user()               |
  +----------------------+
  | user1@192.168.222.51 |
  +----------------------+
  1 row in set (0.00 sec)
  8.show grants for user2@192.168.133.1; //查看指定用户的授权
  mysql> select user();
  +----------------+
  | user()         |
  +----------------+
  | root@localhost |
  +----------------+
  1 row in set (0.00 sec)

  mysql> grant SELECT,UPDATE,INSERT on db1.* to 'user3'@'192.168.222.%'>  Query OK, 0 rows affected (0.00 sec)
  mysql> show grants for user3@'192.168.222.%';
  +------------------------------------------------------------------------------------------------------------------+
  | Grants for user3@192.168.222.%                                                                                 |
  +------------------------------------------------------------------------------------------------------------------+
  | GRANT USAGE ON . TO 'user3'@'192.168.222.%'>6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9' |
  | GRANT SELECT, INSERT, UPDATE ON db1. TO 'user3'@'192.168.222.%'                                             |
  +------------------------------------------------------------------------------------------------------------------+
  2 rows in set (0.00 sec)

页: [1]
查看完整版本: mysql创建用户以及授权