當用戶首次安裝安裝時,總是想修改root的初始化密碼,我也是,每次都百度一下,下面主要給出一些操作數據庫的常用sql和一些安裝性的東西,需要的朋友參考下吧
當用戶首次安裝MySQL數據庫時,總是想修改root的初始化密碼,我也是,每次都百度一下,下面主要給出一些操作數據庫的常用SQL和一些基本概念性的東西。
修改用戶的初始化密碼:
SET?PASSWORD?=?PASSWORD(‘your?new?password'); ALTER?USER?‘root'@‘localhost'?PASSWORD?EXPIRE?NEVER; flush?privileges;
創建新的用戶:
CREATE?USER?‘username'@‘host'?IDENTIFIED?BY?‘password';
給用戶授予權限:
GRANT?all?privileges?ON?databasename.tablename?TO?‘username'@‘host'; flush?privileges;
設置和更改密碼:
SET?PASSWORD?FOR?‘username'@‘host'?=?PASSWORD(‘password');
撤銷權限:
REVOKE?privilege?ON?databasename.tablename?FROM?‘username'@‘host';
安裝用戶:
DROP?USER?‘username'@‘host';
查看用戶的授權:
SHOW?grants?for?‘username'@‘host';
Innodb引擎提供了ACID事務的支持:
-
A(原子性;Atomicity)指一個事務要么全執行,要么不執行;
-
C(一致性;Consistency)指事務的運行并不改變數據庫中數據的一致性;
-
I(獨立性;Isolation)也稱作隔離性,指兩個以上事務不會交替執行的狀態;
-
D(持久性;Durability)指事務執行成功后,所做的改變會持久保存在數據庫中,不會無緣無故地回滾;
MYSQL的隔離級別:
?
臟讀:允許讀取到未提交的臟數據。
不可重復讀:在T1點讀取了一些記錄,在T2點重新讀取這些記錄時,這些記錄可能已經被改變、或者消失不見。
幻讀:解決了不重復讀,保證了同一個事務里,安裝的結果都是事務開始時的狀態。
MYSQL的鎖定機制:
鎖定機制就是數據庫為了保證數據庫的一致性而使各種共享資源在被并發訪問變得有序所設定的一種規則。
-
行級鎖定
-
鎖定安裝的顆粒度很小,容易造成死鎖,但鎖定資源爭用的概率也最小。
-
頁級鎖定
-
介于行級鎖定和表級鎖定之間。
-
表級鎖定
最大顆粒度的鎖定機制。不容易發生死鎖,但是發生資源競爭的概率較大。
表級鎖定主要應用于MyISAM,Memory,CSV等一些非事務性存儲引擎。行級鎖定主要應用于Innodb和NDBCluster存儲引擎。頁級鎖定主要用于BerkeleyDB。