写在前面

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 ; # 这里我本地连接太多,超过极限)

二、