MySql建立使用者並賦權

2021-10-01 17:12:49 字數 3308 閱讀 9060

# 登入

mysql -u root -p

# 新建乙個資料庫 testdb

create database testdb;

use testdb;

# 建立t_user_info表

create table t_user_info(

id int(11),

name varchar(64),

age int(11)

)# 檢視系統使用者資訊

# 系統資訊儲存在mysql資料庫中

從上圖可以看到,會列出資料庫所有的使用者及許可權

create

user

'user_name'@'host' identified by 'password';

例:

#表示建立的新使用者,名為aaalxf這個新使用者密碼為lxf_password,只允許本機登陸

create user 'lxf'@'localhost' identified by 'lxf_password'

;#表示新建立的使用者,名為lxf_2,這個使用者密碼為lxf_password,可以從其他電腦遠端登陸mysql所在伺服器

create user 'lxf_2'@'%' identified by 'lxf_password'

;#表示新建立的使用者lxf_3,沒有密碼,可以從其他電腦遠端登陸mysql伺服器

create user 'lxf_3'@'%'

;

再用select * from user檢視使用者列表:

可以看出 有lxf使用者了。但是可以看到lxf的許可權很多都是n,表示沒有許可權,因為還要為使用者授予許可權。

命令:grant privileges on databasename.tablename to 'username'@'host'例:

# mysql -u test -h 115.28.203.224 -p

#表示給使用者lxf授權,讓lxf能給testdb庫中的t_user_info表 實行 insert 和 select

grant select,insert on testdb.t_user_info to 'lxf'@'%'

;#表示給使用者lxf授權,讓lxf能給所有庫所有表實行所有的權力。

grant all on *.* to 'lxf' @ '%'

;#再看使用者列表,可以發現許可權都變成 y了。

注意:用以上命令授權的使用者不能給其他使用者授權,如果想這個使用者能夠給其他使用者授權,就要在後面加上with grant option

如:grant all on *.* to 'lxf'@'%' with grant option;

使用這個命令使許可權生效,尤其是你對那些許可權表user、db、host等做了update或者delete更新的時候。以前遇到過使用grant後許可權沒有更新的情況,大家可以養成習慣,只要對許可權做了更改就使用flush privileges命令來重新整理許可權。

flush privileges;
使用如下命令可以方便的檢視到某個使用者的許可權:

注意刪除使用者不要使用delete直接刪除,因為使用delete刪除後使用者的許可權並未刪除,新建同名使用者後又會繼承以前的許可權。正確的做法是使用drop user命令刪除使用者

命令:drop user 'user_name'@'host'

例:

# 表示刪除使用者lxf

drop user 'lxf'@'%'

;#刪除'lxf'@'192.168.100.*'

drop user 'lxf'@'192.168.100.*'

;

set  password  for  'username'@'host'

= password(

'newpassword');

#設定當前使用者的密碼 set password = password('123456')

set password = password(

'newpassword'

);

命令:revoke privileges on database.tablename from 'username'@'host';例如:revoke select on *.* from 'lxf'@'%';但注意:則用revoke select on testdb.t_user_info to 'lxf'@'%';是不能撤銷使用者lxftestdb.t_user_info中的select權利的。

反過來grant select on testdb.t_user_info to 'lxf'@'%';授予權力

revoke select on *.* from 'lxf'@'%';也是不能用來撤銷使用者lxftestdb庫的t_user_info表的select權利的

oracle建立使用者並賦權

oracle建立表空間和使用者 sql view plain copy 建立表空間和使用者的步驟 使用者建立 create user 使用者名稱 identified by 密碼 授權 grant create session to 使用者名稱 grant create table to 使用者名稱...

oracle建立使用者並賦權

oracle建立表空間和使用者 sql view plain copy 建立表空間和使用者的步驟 使用者建立 create user 使用者名稱 identified by 密碼 授權 grant create session to 使用者名稱 grant create table to 使用者名稱...

MYSQL新建使用者並賦權

測試環境mysql root 登入賬號 mysql u root p 密碼 所有資料庫 show databases 刪除資料庫 drop database x 刪除使用者 delete from mysql.user where user x 查詢所有使用者 select user,host fr...