本文基於Mysql5.7,介紹的程序大部分位於通用二進制包的bin目錄下,只有mysql.server位於support-files目錄。
MySQL安裝包中有許多不同的程序。本節對它們進行了簡要概述。
除特定於平臺的程序外,大多數MySQL發行版都包含所有這些程序(例如,在Windows上不使用服務器啓動腳本)。唯一的例外是,RPM發行版更加專業化。有一個RPM用於服務器,另一個用於客戶端程序,等等。
每個MySQL程序都有許多不同的選項。大多數程序都提供了一個 --help 選項,您可以使用該選項來描述程序的不同選項。例如,嘗試 mysql --help。
您可以通過在命令行或選項文件中指定選項來覆蓋MySQL程序的默認選項值。
1. 用於啓動和停止
MySQL服務器中,mysqld是完成MySQL安裝中大部分工作的主程序。服務器隨附有幾個相關的腳本,可幫助您啓動和停止服務器:
- mysqld
SQL守護程序(即MySQL服務器)。要使用客戶端程序,必須運行mysqld,因爲客戶端可以通過連接到服務器來訪問數據庫。 - mysqld_safe
服務器啓動腳本。mysqld_safe 嘗試啓動mysqld。 - mysql.server
服務器啓動腳本。該腳本在使用System V樣式運行目錄的系統上使用,該目錄包含啓動特定運行級別的系統服務的腳本。它調用 mysqld_safe啓動MySQL服務器。 - mysqld_multi
服務器啓動腳本,可以啓動或停止系統上安裝的多個服務器。
2. 用於安裝和升級
有幾個程序在MySQL安裝或升級過程中執行設置操作:
- comp_err
在MySQL構建/安裝過程中使用該程序。它從錯誤源文件編譯錯誤消息文件。 - mysql_install_db
該程序初始化MySQL數據目錄,創建 mysql數據庫並使用默認特權初始化其授權表,並設置 InnoDB 系統表空間。首次在系統上安裝MySQL時,通常只執行一次。 - mysql_plugin
該程序配置MySQL服務器插件。 - mysql_secure_installation
該程序使您可以提高MySQL安裝的安全性。 - mysql_ssl_rsa_setup
如果缺少安全文件,此程序將創建支持安全連接所需的SSL證書和密鑰文件以及RSA密鑰對文件。mysql_ssl_rsa_setup創建的文件 可用於使用SSL或RSA的安全連接。 - mysql_tzinfo_to_sql
此程序使用主機系統zoneinfo數據庫(描述時區的文件集)的內容加載mysql數據庫中的時區表。 - mysql_upgrade
在MySQL升級操作之後使用此程序。它使用在新版本的MySQL中所做的任何更改來更新授權表,並檢查表中的不兼容性並在必要時進行修復。
3. 用於客戶端服務器之間連接
連接到MySQL server的MySQL客戶端程序:
- mysql
命令行工具,用於以交互方式輸入SQL語句或以批處理模式從文件中執行SQL語句。 - mysqladmin
執行管理操作的客戶端,例如創建或刪除數據庫,重新加載授權表,將表刷新到磁盤以及重新打開日誌文件。mysqladmin還可以用於從服務器檢索版本,進程和狀態信息。 - mysqlcheck
一個表維護客戶端,用於檢查,修復,分析和優化表。 - mysqldump
將MySQL數據庫轉儲爲SQL文件、文本文件或XML文件的客戶端。 - mysqlimport
使用LOAD DATA將文本文件導入到各自的表中的客戶端。 - mysqlpump
將MySQL數據庫作爲SQL轉儲到文件中的客戶端。 - mysqlsh
MySQL Shell是MySQL Server的高級客戶端和代碼編輯器。除了提供的類似於MySQL的SQL功能外,MySQL Shell還爲JavaScript和Python提供腳本編寫功能,幷包括使用mysql的API。 - mysqlshow
顯示有關數據庫,表,列和索引的信息的客戶端。 - mysqlslap
旨在模擬MySQL服務器的客戶端負載並報告每個階段的時間的客戶端。它就像多個客戶端正在訪問服務器一樣工作。
4. MySQL管理和實用程序
MySQL管理和實用程序:
- innochecksum
一個離線的InnoDB離線文件校驗和實用程序。 - myisam_ftdump
一個實用程序,用於顯示有關MyISAM表中全文索引的信息 。 - myisamchk
描述,檢查,優化和修復MyISAM表的實用程序 。 - myisamlog
處理MyISAM日誌文件內容的實用程序 。 - myisampack
壓縮MyISAM表以生成較小的只讀表的實用程序。 - mysql_config_editor
一種實用程序,使您可以將身份驗證憑據存儲在名爲 .mylogin.cnf的安全,加密的登錄路徑文件中。 - mysqlbinlog
從二進制日誌讀取語句的實用程序。二進制日誌文件中包含的已執行語句的日誌可用於幫助從崩潰中恢復。 - mysqldumpslow
用於讀取和彙總慢速查詢日誌內容的實用程序。
5. MySQL程序開發實用程序
MySQL程序開發實用程序:
- mysql_config
一個shell腳本,產生編譯MySQL程序時所需的選項值。 - my_print_defaults
一個實用程序,用於顯示選項文件的選項組中存在哪些選項。 - resolve_stack_dump
將數字堆棧跟蹤轉儲解析爲符號的實用程序。
6. 雜項實用程序
雜項實用程序:
- lz4_decompress
一個實用程序,用於解壓縮使用LZ4壓縮創建的mysqlpump輸出。 - perror
該實用程序顯示系統或MySQL錯誤代碼的含義。 - replace
在輸入文本中執行字符串替換的實用程序。 - resolveip
將主機名解析爲IP地址或反之亦然的實用程序。 - zlib_decompress
一個實用程序,用於解壓縮使用ZLIB壓縮創建的mysqlpump輸出。
Oracle 公司還提供了 MySQL Workbench GUI工具,該工具用於管理MySQL服務器和數據庫,創建,執行和評估查詢,以及從其他關係數據庫管理系統遷移模式和數據。其他GUI工具包括 MySQL Notifier和 MySQL for Excel。
使用MySQL client/server 庫與服務器通信的MySQL客戶端程序使用以下環境變量:
環境變量 | 含義 |
---|---|
MYSQL_UNIX_PORT | 默認的Unix套接字文件;用於連接到 localhost |
MYSQL_TCP_PORT | 默認端口號;用於TCP / IP連接 |
MYSQL_PWD | 默認密碼 |
MYSQL_DEBUG | 調試時的調試跟蹤選項 |
TMPDIR | 創建臨時表和文件的目錄 |
參考文檔
https://dev.mysql.com/doc/refman/5.7/en/programs-overview.html