Mysql內置基本高級命令
- 寫在前面
- 一、Mysql內置高級命令
- 1.1、myisampack
- 1.2、mysql
- 1.3、mysqlaccess
- 1.4、mysqladmin
- 1.4.0 每個兩秒查看一次服務器的狀態,總共重複5次。
- 1.4.1 查看服務器的狀況:status
- 1.4.2 修改root 密碼:
- 1.4.3 檢查mysqlserver是否可用:
- 1.4.4 查詢服務器的版本
- 1.4.5 查看服務器狀態的當前值:
- 1.4.6 查詢服務器系統變量值:
- 1.4.7 顯示服務器所有運行的進程:
- 1.4.8 創建數據庫
- 1.4.9 刪除數據庫 daba-test
- 1.4.10 重載權限信息
- 1.4.11 刷新所有表緩存,並關閉和打開log
- 1.4.12 使用安全模式關閉數據庫
- 1.4.13 刷新命令mysqladmin flush commands
- 1.4.14 mysqladmin 執行kill 進程:
- 1.4.15 停止和啓動MySQL replication on a slave server
- 1.4.16 同時執行多個命令
- 1.5、mysqlbinlog
- 1.6、mysqlcheck
- 1.7、mysqldump
- 1.8、mysqlhotcopy
- 1.9、mysqlimport
- 1.10、mysqlshow
- 1.10.1 顯示服務器上的所有數據庫
- 1.10.2 顯示數據庫daba-test下有些什麼表:
- 1.10.3 統計daba-test 下數據庫表列的彙總
- 1.10.4 統計daba-test 下數據庫表的列數和行數
- 1.11、perror
- 1.12、mysqlpump
- 1.13、mysqlslap
- 二、
寫在前面
vv
一、Mysql內置高級命令
1.1、myisampack
MySQL的MyISAM存儲引擎支持壓縮表空間,壓縮後的表空間會減少,但是壓縮後的表是隻讀的,不能插入和更新數據,如果需要更新,則需要解壓後更新,再壓縮 。
1.2、mysql
交互式SQL,或批處理
mysql -h localhost -u myname -ppassword mydb
1.3、mysqlaccess
1.4、mysqladmin
-c number 自動運行次數統計,必須和 -i 一起使用
-i number 間隔多長時間重複執行
1.4.0 每個兩秒查看一次服務器的狀態,總共重複5次。
mysqladmin -uroot -p -i 2 -c 5 status
1.4.1 查看服務器的狀況:status
mysqladmin -uroot -p status
1.4.2 修改root 密碼:
mysqladmin -u root -p原密碼 password ‘newpassword’
1.4.3 檢查mysqlserver是否可用:
mysqladmin -uroot -proot ping
1.4.4 查詢服務器的版本
mysqladmin -uroot -p version
1.4.5 查看服務器狀態的當前值:
mysqladmin -uroot -p extended-status
1.4.6 查詢服務器系統變量值:
mysqladmin -uroot -p variables
1.4.7 顯示服務器所有運行的進程:
mysqladmin -uroot -p processlist
mysqladmin -uroot -proot -i 1 -c 10 processlist //每秒刷新一次
1.4.8 創建數據庫
mysqladmin -uroot -p create test
1.4.9 刪除數據庫 daba-test
mysqladmin -uroot -p drop daba-test
1.4.10 重載權限信息
mysqladmin -uroot -p reload
1.4.11 刷新所有表緩存,並關閉和打開log
mysqladmin -uroot -p refresh
1.4.12 使用安全模式關閉數據庫
mysqladmin -uroot -p shutdown
注意這裏是Windows下,關閉重啓Mysql服務的方式,還要注意服務名(可先檢查服務項)
net start MySQL57
net stop MySQL57
mysqld --defaults-file=“C:\ProgramData\MySQL\MySQL Server 5.7\my.ini” MySQL57;
1.4.13 刷新命令mysqladmin flush commands
mysqladmin -u root -proot flush-hosts
mysqladmin -u root -proot flush-logs
mysqladmin -u root -proot flush-privileges
mysqladmin -u root -proot flush-status
mysqladmin -u root -proot flush-tables
mysqladmin -u root -proot flush-threads
1.4.14 mysqladmin 執行kill 進程:
mysqladmin -uroot -p processlist
mysqladmin -uroot -p kill id
1.4.15 停止和啓動MySQL replication on a slave server
mysqladmin -u root -p stop-slave
mysqladmin -u root -p start-slave
1.4.16 同時執行多個命令
mysqladmin -u root -p process status version
1.5、mysqlbinlog
關於 binlog的相關配置,可自行學習,我這裏僅介紹一下,Windows下的配置,
首先 關閉服務
修改Mysql 啓動配置,my.ini或者 某conf文件,
添加如下,注意這裏不能是絕對路徑(Windows下)
big-bin = “binlog.log”
然後重啓Mysql即可,
驗證,可看到已成功啓動binlog
show variables like ‘%bin%’;
SHOW BINARY LOGS;
show binary logs;
show master status;
mysqlbinlog binlog.000001
mysqlbinlog --skip-gtids binlog.000001 > /tmp/dump.sql
1.6、mysqlcheck
mysqlcheck工具可以檢查、修復、優化和分析,實際上是集成了Mysql中的check、repair、analyze、tmpimize的功能,對不同的存儲引擎並不會完全支持相同的4個操作,
需注意,Each table is locked and therefore unavailable to other sessions while it is being processed, although for check operations, the table is locked with a READ lock
use classicmodels;
show tables ;
create table user_tb(id int,name varchar(20)) engine=MyISAM;
mysqlcheck classicmodels -uroot -p
mysqlcheck -uroot -p -c classicmodels user_tb;
mysqlcheck -uroot -p -r classicmodels user_tb;
mysqlcheck classicmodels user_tb;
1.7、mysqldump
已過時,數據庫備份命令,可輸出sql,csv,txt,或xml格式
1.8、mysqlhotcopy
1.9、mysqlimport
數據導入
1.10、mysqlshow
1.10.1 顯示服務器上的所有數據庫
mysqlshow -uroot -proot
1.10.2 顯示數據庫daba-test下有些什麼表:
mysqlshow -uroot -proot classicmodels
1.10.3 統計daba-test 下數據庫表列的彙總
mysqlshow -uroot -proot classicmodels -v
1.10.4 統計daba-test 下數據庫表的列數和行數
mysqlshow -uroot -proot classicmodels -v -v
1.11、perror
展示Mysql錯誤信息
1.12、mysqlpump
數據備份,mysqldump已過時
1.13、mysqlslap
負載仿真診斷,可模擬多個客戶端連接操作,檢查負載效率,性能壓測等
mysqlslap -a -c 20 -i 5 -uroot -proot
mysqlslap -a -c 500 -i 10 -uroot -proot ; # 這裏我本地連接太多,超過極限)