MySQL是最流行、使用最廣泛的開源資料庫,上手很快,但對一個DBA,要真正掌握MySQL,需要花很多時間進行系統化的學習、實踐。
MySQL基礎運維,需要掌握MySQL軟體的安裝、配置,了解MySQL大緻的架構,業界這方面的書很多。MySQL官方文檔要熟悉,知道官方文檔包含哪些内容,遇到問題的時候能知道在什麼地方查找需要的資訊。
MySQL官方文檔介紹
每個版本的mysql都有一個對應的參考手冊, 現在建議可以從
MySQL 5.7 reference入手學習。
MySQL安裝部署
學習MySQL安裝部署的幾種方式
- rpm包安裝
- 源碼編譯安裝
- 二進制安裝
- 基于docker的mysql安裝部署
熟悉MySQL軟體中的各類檔案
了解各種安裝方式下mysql 二進制檔案和lib檔案的路徑,資源檔案,資料常用的mysql指令行工具及其适用
- mysql
- mysqld
- mysqladmin, mysqladmin extended-status
- mysqldump
- mysqlcheck
- mysqlbinlog
-
mysql_config
熟悉這些指令的作用,熟悉這些指令的常用參數。
mysql資料庫初始化過程
- mysql_install_db
- mysql 5.7 mysqld --bootstrap
熟悉MySQL執行個體啟動腳本
- mysqld_safe
- rpm安裝的mysql啟動腳本
熟悉MySQL的啟動過程
- mysql參數檔案加載過程
熟悉MySQL執行個體相關檔案
熟悉mysql執行個體中各類檔案的作用,路徑
- pid檔案, sock檔案,
- error log, slow log, general log
- 表相關的檔案(frm, ibd)
- innodb 共享表空間,日志
- binlog, binlog index, relay log, relay log index
- master.info, relay-log.info
- ssl認證相關檔案
熟悉上面這些檔案的預設路徑,以及配置這些路徑的參數。
- basedir
- datadir
- innodb_data_home_dir
- innodb_log_group_home_dir
- lc_messages_dir
- plugin_dir
- slave_load_tmpdir
- tmpdir
熟悉MySQL各類配置參數
學習官方文檔參數相關内容
參數清單和
參數含義了解參數的作用域,全局參數和session參數。動态參數是不是修改了就立刻生效?是否對目前回話生效?是否都已經建立的老的連接配接生效?
單機多執行個體MySQL安裝配置
使用MySQL
MySQL支援的資料類型
掌握常見資料類型的适用場景。
MySQL字元集
- 掌握字元集轉換
- 掌握常見引起亂碼的原因
- 掌握字元集相關的幾個配置參數的作用(show global variables like '%char%';
MySQL内建函數
從官方文檔學習MySQL的内建函數。
MySQL DDL
- DDL的文法
- 不同類型DDL的執行過程
- 了解DDL對業務的影響
- 了解線上DDL的原理
MySQL帳号和權限體系
- MySQL賬号認證過程
- MySQL支援的不同類型的權限
- 權限相關的表(user, db, table_privs)
MySQL的存儲過程
熟悉存儲過程的文法,能使用存儲過程處理批量資料訂正。
MySQL觸發器
熟悉觸發器的文法,不同類型觸發器的作用。