成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

數據庫:MySQL的存儲引擎到底是怎么回事?

存儲 存儲軟件
存儲引擎的各項特性就是為了保障數據庫的安全和性能設計結構。

 [[271516]]

一.存儲引擎簡介

 

數據庫:MySQL的存儲引擎到底是怎么回事?

  • 1、文件系統:
  • 1.1 操作系統組織和存取數據的一種機制。
  • 1.2 文件系統是一種軟件。
  • 2、文件系統類型:ext2 3 4 ,xfs 數據
  • 2.1 不管使用什么文件系統,數據內容不會變化
  • 2.2 不同的是,存儲空間、大小、速度。
  • 3、MySQL引擎:
  • 3.1 可以理解為,MySQL的“文件系統”,只不過功能更加強大。
  • 4、MySQL引擎功能:
  • 4.1 除了可以提供基本的存取功能,還有更多功能事務功能、鎖定、備份和恢復、優化以及特殊功能

總之,存儲引擎的各項特性就是為了保障數據庫的安全和性能設計結構。

二.MySQL自帶的存儲引擎類型

MySQL 提供以下存儲引擎:

  • 01)InnoDB
  • 02)MyISAM
  • 03)MEMORY
  • 04)ARCHIVE
  • 05)FEDERATED
  • 06)EXAMPLE
  • 07)BLACKHOLE
  • 08)MERGE
  • 09)NDBCLUSTER
  • 10)CSV

還可以使用第三方存儲引擎:

  • 01)MySQL當中插件式的存儲引擎類型
  • 02)MySQL的兩個分支
  • 03)perconaDB
  • 04)mariaDB
  1. #查看當前MySQL支持的存儲引擎類型 
  2. mysql> show engines 
  3. #查看innodb的表有哪些 
  4. mysql> select table_schema,table_name,engine from information_schema.tables where engine='innodb'
  5. #查看myisam的表有哪些 
  6. mysql> select table_schema,table_name,engine from information_schema.tables where engine='myisam'

1、innodb和myisam的區別

物理上的區別:

  1. #進入mysql目錄 
  2. [root@db01~l]# cd /application/mysql/data/mysql 
  3. #查看所有user的文件 
  4. [root@db01 mysql]# ll user.* 
  5. -rw-rw---- 1 mysql mysql 10684 Mar 6 2017 user.frm 
  6. -rw-rw---- 1 mysql mysql 960 Aug 14 01:15 user.MYD 
  7. -rw-rw---- 1 mysql mysql 2048 Aug 14 01:15 user.MYI 
  8. #進入word目錄 
  9. [root@db01 world]# cd /application/mysql/data/world/ 
  10. #查看所有city的文件 
  11. [root@db01 world]# ll city.* 
  12. -rw-rw---- 1 mysql mysql 8710 Aug 14 16:23 city.frm 
  13. -rw-rw---- 1 mysql mysql 688128 Aug 14 16:23 city.ibd 

2.innodb存儲引擎的簡介

在MySQL5.5版本之后,默認的存儲引擎,提供高可靠性和高性能。

優點:

  • 01)事務安全(遵從 ACID)
  • 02)MVCC(Multi-Versioning Concurrency Control,多版本并發控制)
  • 03)InnoDB 行級別鎖定
  • 04)Oracle 樣式一致非鎖定讀取
  • 05)表數據進行整理來優化基于主鍵的查詢
  • 06)支持外鍵引用完整性約束
  • 07)大型數據卷上的最大性能
  • 08)將對表的查詢與不同存儲引擎混合
  • 09)出現故障后快速自動恢復
  • 10)用于在內存中緩存數據和索引的緩沖區池

數據庫:MySQL的存儲引擎到底是怎么回事?

innodb核心特性

重點:

  • MVCC
  • 事務
  • 行級鎖
  • 熱備份
  • Crash Safe Recovery(自動故障恢復)

3.查看存儲引擎

1)使用 SELECT 確認會話存儲引擎

  1. #查詢默認存儲引擎 
  2. SELECT @@default_storage_engine; 

2)使用 SHOW 確認每個表的存儲引擎

  1. #查看表的存儲引擎 
  2. SHOW CREATE TABLE City\G 
  3. SHOW TABLE STATUS LIKE 'CountryLanguage'\G 

3)使用 INFORMATION_SCHEMA 確認每個表的存儲引擎

  1. #查看表的存儲引擎 
  2. SELECT TABLE_NAME, ENGINE FROM INFORMATION_SCHEMA.TABLESWHERE TABLE_NAME = 'City'AND TABLE_SCHEMA = 'world'\G 

4.存儲引擎的設置

1)在啟動配置文件中設置服務器存儲引擎

 

  1. #在配置文件的[mysqld]標簽下添加 
  2. [mysqld] 
  3. default-storage-engine=<Storage Engine> 

2)使用 SET 命令為當前客戶機會話設置

 

  1. #在MySQL命令行中臨時設置 
  2. SET @@storage_engine=<Storage Engine> 

(3)在 CREATE TABLE 語句指定

  1. #建表的時候指定存儲引擎 
  2. CREATE TABLE t (i INT) ENGINE = <Storage Engine>; 

 三.真實企業案例

項目背景:

公司原有的架構:一個展示型的網站,LAMT,MySQL5.1.77版本(MYISAM),50M數據量。

小問題不斷:

1、表級鎖:對表中任意一行數據修改類操作時,整個表都會鎖定,對其他行的操作都不能同時進行。

2、不支持故障自動恢復(CSR):當斷電時有可能會出現數據損壞或丟失的問題。

如何解決:

1、提建議將現有的MYISAM引擎替換為Innodb,將版本替換為5.6.38

1)如果使用MYISAM會產生”小問題”,性能安全不能得到保證,使用innodb可以解決這個問題。

2)5.1.77版本對于innodb引擎支持不夠完善,5.6.38版本對innodb支持非常完善了。

2、實施過程和注意要素

1)備份生產庫數據(mysqldump)

  1. [root@db01 ~]# mysqldump -uroot -p123 -A --triggers -R --master-data=2 >/tmp/full.sql 

2)準備一個5.6.38版本的新數據庫

3)對備份數據進行處理(將engine字段替換)

  1. [root@db01 ~]# sed -i 's#ENGINE=MYISAM#ENGINE=INNODB#g' /tmp/full.sql 

4)將修改后的備份恢復到新庫

5)應用測試環境連接新庫,測試所有功能

6)停應用,將備份之后的生產庫發生的新變化,補償到新庫

7)應用割接到新數據庫

責任編輯:武曉燕 來源: 今日頭條
相關推薦

2023-10-12 08:54:20

Spring事務設置

2022-04-15 08:54:39

PythonAsync代碼

2021-10-15 21:16:00

手機內存漏洞

2018-01-28 13:59:23

小程序微信開發者

2015-05-29 09:34:13

2018-03-13 10:32:43

2023-03-29 08:24:30

2022-05-26 11:36:12

APK文件小米

2024-03-15 08:06:58

MySQLJOIN命令

2023-03-05 15:41:58

MySQL日志暴漲

2019-05-28 13:50:27

MySQL幻讀數據庫

2021-06-04 11:10:04

JavaScript開發代碼

2010-04-20 09:55:37

2020-02-18 11:19:36

物聯網病毒物聯網IOT

2021-05-19 10:44:42

數據庫架構技術

2022-01-25 20:23:21

聯邦通信委員會聯邦航空管理局5G

2021-03-19 07:40:22

緩存數據庫日志

2020-08-12 09:10:16

AI芯片AI人工智能

2018-08-26 15:39:03

數據庫MySQL索引

2019-12-18 18:31:10

黑客醫療保險軟件
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 日本精品一区二区三区在线观看视频 | 日韩中文字幕一区二区 | 日韩精品成人 | 99re6在线| 久久精品小视频 | 中文字幕国产在线 | 天天干天天干 | 日本三级网站在线 | 国产成人免费观看 | 国产精品久久久久久一区二区三区 | 一区二区三区在线播放 | 成人h动漫精品一区二区器材 | 99久久精品免费 | 久久福利 | 网站一区二区三区 | 欧美a级成人淫片免费看 | 成人激情视频免费观看 | 国产成人免费视频 | 欧美成人自拍视频 | 成人在线观看免费视频 | 精品不卡| 在线观看中文字幕 | 久久99精品久久久久久青青日本 | 亚洲精品女人久久久 | 国产在线视频一区二区董小宛性色 | 日韩视频一区二区 | 国产精品a免费一区久久电影 | 久久成人国产精品 | 老司机狠狠爱 | 国产视频一区二区 | 精品欧美一区免费观看α√ | 久久久久国产一区二区三区不卡 | 中文字幕日韩欧美 | 国产资源在线视频 | 国产免费一区二区三区网站免费 | 日日操av| 日韩精品在线一区 | 久草电影网 | 日韩精品在线免费观看视频 | 久久中文视频 | 久久精品99|