MySQL進階特性

來源:互聯網
上載者:User

標籤:檔案中   需要   另一個   ror   inno   使用   持久性   mit   nod   

MySQL系統管理使用者管理
CREATE USER username IDENTIFIED BY ‘password‘;  建立使用者CREATE USER@’%’ IDENTIFIED BY ‘password‘;GRANT ALL PRIVILEGES ON *.* TO [email protected]‘%‘;  賦予對應的許可權FLUSH PRIVILEGES;

建立使用者之後可以使用如下命令來刪除使用者:

DROP USER username;  刪除使用者DELETE FROM user where User=‘username‘;  刪除使用者,需要首先use mysql

grant語句賦予使用者相應的許可權,通俗的講,grant相當於以下sql語句:

grant priv_set on dbname to username;

如何查看使用者的相應許可權呢?

SHOW GRANTS FOR username;

如何撤銷使用者對應的許可權?

REVOKE ALL PRIVILEGES ON dbname.table FROM username;REVOKE INSERT ON dbname.table FROM username; 撤銷建立表許可權

使用者管理更新過後請使用FLUSH PRIVILEGES,否則可能會出現ERROR 1396錯誤。

 

表資料複製

利用select可以實現表結構與資料的同步複製。

CREATE TABLE tablename SELECT * FROM oldtablename;CREATE TABLE tablename SELECT * FROM oldtablename where id < 10;CREATE TABLE tablename LIKE oldtablename; 利用linke語句也可以實現表的複製

 

Database Backup與恢複

資料庫的匯出:

mysqldump -h x.x.x.x -u root database > backup.sql -p;  輸入資料密碼後資料庫匯出到backup.sql檔案中mysql -h x.x.x.x -u root database < backup.sql -p; 執行資料恢複操作

執行資料庫的恢複操作時database必須存在,否則恢複資料時找不到對應的資料庫。

利用source命令,也可以執行資料恢複操作:

mysql> use xxx;mysql> source backup.sql

 

MySQL的儲存引擎

儲存引擎就是表的類型,MySQL有多種儲存引擎,不同的儲存引擎有不同的儲存機制、索引技術和鎖定水平。

MySQL儲存引擎分為事務安全表的引擎和非事務安全表的引擎,事務是資料庫中一個重要概念,事務具有原子性、一致性、隔離性和持久性4中特性。事務是為了保護資料的安全性,防止資料庫出現故障而導致資料庫中資料不一致。事務安全表可以使用COMMIT語句合并多條語句,適合需要經常更新的表;非事務安全表由於沒有事務支援,處理速度較快,儲存時佔用記憶體較小,資料表執行更新佔用記憶體少。

MyISAM引擎

MyISAM適合讀操作次數遠大於寫操作的資料庫,不支援事務操作,由於不需要處理事務記錄,其佔用記憶體較小,查詢效率較高。每個MyISAM表對應兩個磁碟檔案:一個是用於儲存資料的資料檔案,其相對路徑為dbname/tablename.MYD;另一個是儲存索引的索引檔案,其相對路徑為dbname/tablename.MYI。

InnoDB引擎

InnoDB是MySQL的預設儲存引擎,InnoDB引擎管理事務安全表,使用多版本並發控制和行級鎖來提供對事務的支援,除了提供事務支援外,InnoDB還支援外鍵約束,擁有故障恢複能力。InnoDB設計目標是以最大的效率處理海量資料,其CPU利用率是基於所有磁碟的關聯式資料庫引擎中最高的,因此,InnoDB引擎非常適合支援事務且並發讀寫頻率較高的資料庫。

InnoDB和MyISAM對比

InnoDB和MyISAM是MySQL中最常用的兩個儲存引擎,這兩個儲存引擎各有優劣,對儲存引擎的選擇應該根據具體應用來選擇,只有這樣才能最大限度發揮MySQL資料庫的效能優勢。

InnoDB和MyISAM區別總結如下:

  • MyISAM不支援交易處理和外鍵約束等進階處理,而InnoDB儲存引擎支援
  • MyISAM強調的是效能,其執行速度比InnoDB更快,而InnoDB儲存引擎則強調的是資料安全性。
  • MyISAM支援表級鎖定,而InnoDB支援行級鎖定。
  • MyISAM支援全文索引,而InnoDB不支援。

 

MySQL進階特性

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.