【數據庫】權限

【mysql 5以後】


*可使用rename 表 屬性名 to 舊屬性名;
*以前刪除用戶時必須先使用revoke 刪除用戶權限,而後刪除用戶,mysql5以後drop 命令能夠刪除用戶的同時刪除用戶的相關權限html

 

更改密碼:

set password for 用戶=password(‘’);
update  mysql.user  set  password=password('xxxx')  where user='otheruser'mysql

 

查看用戶權限:

show grants for zx_root;linux

 

回收權限:

revoke  select on dmc_db.*  from  zx_root;  //若是權限不存在會報錯sql

 

多個權限:

mysql> grant select,update,delete  ,insert  on dmc_db.*  to  zx_root;數據庫


當即看到結果使用:

【flush  privileges 】刷新服務apache

 

grant和revoke能夠在幾個層次上控制訪問權限


1,整個服務器,使用 grant ALL  和revoke  ALL  on *.*
2,整個數據庫,使用on  database.*
3,特色表,使用on  database.table
4,特定的列 ,使用select(id, se, rank) on testdb.apache_log
5,特定的存儲過程、函數,使用execute on procedure /execute on function testdb.fn_add服務器

 

user表中host列的值的意義


%                  匹配全部主機
localhost      localhost不會被解析成IP地址,直接經過UNIXsocket鏈接
127.0.0.1      會經過TCP/IP協議鏈接,而且只能在本機訪問;
::1                 ::1就是兼容支持ipv6的,表示同ipv4的127.0.0.1socket

 

【不用人員權限】


#普通數據用戶:

select 、insert 、update 、delete函數


#數據庫開發人員(建立表、索引、視圖、存儲過程、函數。。。等權限):

create 、alter 、drop (表操做)
references (外鍵)
 create temporary tables (臨時表)
index (索引)
create/show view (視圖)
create routine(can show procedure status) 、alter routine (can drop a procedure)、execute (存儲過程、函數)spa


#普通DBA管理某個庫:

all privileges (關鍵字 「privileges」 能夠省略)


#高級DBA管理全部庫:

all on *.*

 

權限表

權限 說明
all  
alter  
alter routine 使用alter procedure 和drop procedure
create  
create routine 使用create  procedure
create temporary tables 使用create temporary table
create  user  
create view  
delete  
drop  
execute 使用call和存儲過程
file 使用select into outfile  和load data infile
grant option 可使用grant和revoke
index 可使用create index 和drop index
insert  
lock tables 鎖表
process 使用show full processlist
reload    使用flush
replication client 服務器位置訪問
replocation slave 由複製從屬使用
select  
show databases  
show view  
shutdown 使用mysqladmin shutdown 來關閉mysql
super  
update  
usage 無訪問權限

revoke all PRIVILEGES,GRANT OPTION from 'B';

 

事務提交

方式:顯示提交、隱式提交、自動提交 

COMMIT、ROLLBACK、SAVEPOINT、SET ISOLATION LEVEL,查詢不一樣用戶操做的結果。

設置事務會話級別:

SET [SESSION當前會話 | GLOBAL全局] TRANSACTION ISOLATION LEVEL {

READ UNCOMMITTED讀取未提交內容,也被稱之爲髒讀(Dirty Read))

| READ COMMITTED 讀取提交內容支持所謂的不可重複讀(Nonrepeatable Read),由於同一事務的其餘實例在該實例處理其間可能會有新的commit,因此同一select可能返回不一樣結果。數據庫系統默認

| REPEATABLE READ可重讀,mysql默認)

| SERIALIZABLE}

事務內容來自:

http://blog.itpub.net/195110/viewspace-1080777/

隔離級別詳解:

http://bbs.linuxtone.org/thread-7681-1-1.html

http://www.cnblogs.com/JohnABC/p/3521061.html

相關文章
相關標籤/搜索