运维常用mysql语句
1.、select @@version; ##查询当前mysql的版本.
2、 show variables like 'port';##查看mysql实例的端口。
3、show variables like 'socket';##查看实例的socket数据。
4、 show variables like 'datadir';##查看实例的数据路径。
5、show databases; ##显示所有数据库名的命令 。
6、 desc tablename; ## 显示表结构和列结构的命令。
7、show processlist \G;##显示正在执行的线程。
8、explain ##查看语句的执行计划。
9、show index from table_name ##查看表的索引情况。
10、 select * from STATISTICS where table_name='XXX'\G ##查看表的统计信息。
11、select @@max_allowed_packet; ## 查询定义的packet大小。
12、show master status;##查看master状态。
show slave status ;##查看slave状态。
13、 show master logs;##查看所有的log文件,在主服务器上执行。
14、 purge binary logs to 'mysql-bin3306.000003'; #mysql-bin3306.000003之前的日志被purge。
15、show warnings; ##显示最近的警告详情。
16、show variables \G; ##查看当前mysqld的所有参数,包括默认值。
17、show grants for 'username'@'hostip' \G; ##查看某一个用户的权限,请替换参数username 和 hostip。 18、 show create table tablename \G; ##查看某表的创建脚本
实例参数部分
19、show variables like 'log_slave%' \G; ##指定条件的参数设置查询,例如查询以log_slave开头的参数设置。
20、 show variables like 'slow_query_log';##查看是否开启了慢查询日志;ON代表开启。可以在线打开。set global slow_query_log = 1;
21、 show variables like 'slow_query_log_file';## 查看慢查询日志的路径。
22、show variables like 'long_query_time'; ##查看慢查询定义的阈值,单位是秒。记录的查询是大于该值,不包括该值。
23、show variables like 'log_output'; ##查看日志的输出格式(file或table)。
24、show variables like 'log_timestamps';##查看日志的时间信息,UTC时间或者SYSTEM时间。
25、show variables like 'log_slow_slave_statements';##查看从服务器是否开启慢查询日志,ON代表开启。
26、show variables like 'log_queries_not_using_indexes';##将没有使用索引的SQL语句记录到慢查询日志中。
27、show variables like 'log_throttle_queries_not_using_indexes';##集合上面的参数一起使用,限制每分钟内,在慢查询日志中,记录没有使用
索引的次数。避免日志快速增长。
28、show variables like "default%tmp%";查看创建的临时表的存储引擎类型。
29、show variables like 'innodb_log_file_size';##查询log文件大小。
30、show variables like 'innodb_page_size'; ##查询页的大小。一旦数据库通过innodb_page_size设置完成,则后续无法更改。innodb_page_size
是针对普通表的,压缩表不受限制。
31、show variables like 'innodb_buffer_pool_size';##查看缓冲池的大小,每次读写数据都是通过buffer pool;当buffer pool中没有所需的数据
时,才去硬盘中获取。该值设置的越大越好。buffer pool 也是以页(page)为单位的,且大小和innodb_page_size一致。
32. show variables like 'innodb_buffer_pool_instances'; ##设置多少个缓冲池。设置多个instance可将热点打散,提高并发性能(建议设置成cpu
个数值)
33、show engine innodb status \G;##查看buffer pool的状态。
34、set global innodb_buffer_pool_size=2*1024*1024*1024;##在线调整innodb_buffer_pool_size。MySQL 5.7之前的版本,修改该值,需要重启。
35、show variables like 'innodb_buffer_pool_dump_at_shutdown'; ##在MySQL 5.6 以后,可以在停机的时候dump出buffer pool的数据,然后在
启动的时候Load进buffer pool。该功能可以在MySQL启动时自动预热,无需人工干预。
36、show variables like 'innodb_buffer_pool_dump_pct';##dumpd 百分比,是每个buffer pool文件,而不是整体。
37、show variables like 'innodb_buffer_pool_load_at_startup';## 启动时加载dump的文件,恢复到buffer pool中。dump的越多,启动的越慢。
38、 select * from innodb_lock_waits;##查看锁的信息,在数据库sys下执行。
39、show variables like 'transaction_isolation'; ##查看隔离级别
40、set transaction_isolation='read-committed'; ##设置隔离级别。
41、show variables like 'innodb_print_all_deadlocks';##设置为ON,表示将死锁信息打印到err_log中。
42、show variables like "%innodb_flush_log_at_timeout%";##master thread 每秒刷新redo的buffer到logfile。5.7版本可以设置刷新间隔时间,
默认是1秒。
43、show variables like 'binlog_format';##查看binlog的类型。statement 记录SQL语句;ROW 记录SQL语句操作的那些行(行的变化);mixed 混
合statement 和 Row 格式(不推荐)。
MHA 常用命令
44、masterha_check_ssh --conf=/etc/masterha/app1.conf ##检查MHA集群SSH配置。
45、 masterha_check_repl --conf=/etc/masterha/app1.conf ##检查整个集群的复制状况。
46、masterha_check_status --conf=/etc/masterha/app1.conf ##检查MHA Manager的状态:如果正常,会显示"PING_OK",否则会显示"NOT_RUNNING" ,这代表MHA监控没有开启。
47、nohup masterha_manager --conf=/etc/masterha/app1.conf --remove_dead_master_conf --ignore_last_failover < /dev/null > /var/log/masterha/app1/manager.log 2>&1 & ###监控进程通过nohup管理,可以通过jobs查看后台进程。
48、show slave hosts;##在master节点上执行,查看Slave节点数据。
49、 CHANGE MASTER TO MASTER_HOST='172.XXX.XXX.XXX',MASTER_USER='replname',MASTER_PASSWORD='pwd',MASTER_LOG_FILE='mysql-bin.000001',MASTER_LOG_POS=154; ##change master 示例
50、 若在Slave机器上对数据库进行修改或者删除,会导致主从的不一致,需对Slave机器设置为read_only = 1 ,让Slave提供只读操作。
注意: read_only 仅仅对没有SUPER权限的用户有效(即 mysql.user表的Super_priv字段为Y),一般给App 的权限是不需要SUPER权限的。参数super_read_only 可以将有SUPER权限的用户也设置为只读,且该参数设置为ON 后, read_only 也跟着自动设置为ON。
51、 show variables like "server_uuid";## 查看UUID。 GTID(G lobal T ransaction Id entifier) 全局事物ID。GTID = Server_UUID +
Transaction_ID 其中 Server_UUID 是全局唯一的,Transaction_ID 是自增的。
52、show variables like "%gtid%";##查看gtid相关数据及配置
53、从服务器跳过一个错误的事务
步骤1: 关闭复制
stop slave;
步骤2 : 设置 gtid_next 为回放失败的gtid
set session gtid_next='4e659069-3cd8-11e5-9a49-001c4270714e:1'; #在session里设置gtid_next,即跳过这个GTID
步骤3 : 执行一个空的事物,让回放失败的gtid对应到这个空的事物
begin;
commit;
步骤4 : 还原gtid_next为automatic
SET SESSION GTID_NEXT = AUTOMATIC; #把gtid_next设置回来
步骤5: 开启复制
start slave;
54、通过GTID的复制都是没有指定MASTER_LOG_FILE和MASTER_LOG_POS的,所以通过GTID复制都是从最先开始的事务开始,除非在自己的binlog里面有执行过之前的记录,才会继续后面的执行。Slave如何跳过purge的部分,而不是在最先开始的事务执行。
步骤1:在主上执行,查看被purge的GTID
show global variables like 'gtid_purged'; 以下步骤在从上执行,跳过这个GTID:
步骤2
stop slave;
步骤3
reset master;
步骤4
start slave; 55、show binlog events in 'mysql-bin.000008'; ##查看指定binlog中的内容。
56、 flush binary logs;#刷新日志,并且会产生一个新的日志文件。
57、show variables like "binlog_rows_query_log_events";##设置为ON,可以在ROW格式下,看到SQL的信息。
58、show variables like "binlog_cache_size";##binlog默认写入到binlog_cache中,系统默认是32K,当有一个大的事务时(几百兆),内存中显然
放不下那么多binlog,所以会记录到磁盘上。
59、 show global status like 'binlog_cache_disk_use';##记录了使用临时文件写二进制日志的次数。注意:写日志本来就停满的,如果cache写不下,
再写入磁盘,然后再写binlog,就是写入2次磁盘,会更慢。如果参数binlog_cache_disk_use次数很多,就要看一下binlog_cache_size设置是否太小,
或者事务本身是否太大。
60、xtrabackup 只能备份innodb存储引擎表(用的较少);innobackupex可以备份其他存储引擎(含innodb)。innobackupex在xtrabackup的基础上做
了包装,可以兼容各种存储引擎。
61、mysqldump重要参数 --all-databases :备份所有的数据库;--databases DB1 [DB2 DB3] :备份指定的数据库;--single-transaction : 在一个
事物中导出,确保产生一致性的备份,当前只对innodb支持;--master-data : 备份的时候dump出CHANGE MASTER 信息(file 和 pos),可供主从复制
的时候使用, 默认值为1,当值设置为2 的时候,也会dump出信息,但是会被注释掉 。
62、show variables like '%slave_parallel_workers%';##从数据库用来还原的并发线程数。
运维常用mysql语句的更多相关文章
- 运维常用 MySQL 命令
目录 设置用户密码 方法一 方法二 丢失root密码找回 添加用户 设置用户密码 方法一 SET PASSWORD FOR 'root'@'localhost' = PASSWORD('NewPass ...
- centos 7 查看系统/硬件信息及运维常用命令+联想Y430P无线网卡驱动安装
centos 7 查看系统/硬件信息及运维常用命令 当前环境:联想Y430P CentOS 7.3 [root@yan-001 ~] # uname -a # 查看内核/操作系统/CPU信息的Li ...
- Linux运维-常用操作-培训用例
一.服务器环境 Centos 7.9 二.常用连接工具(免费) 1.Finalshell 2.MobaXterm 3.Putty + WinSCP 三.Linux 系统目录结构 /bin :是 Bi ...
- 【PHP基础】常用mySQL语句以及WampServer2.2设置数据库默认编码
一.WampServer2.2设置数据库默认编码(此部分转自http://www.cnsecer.com/5984.html) wamp下MySQL的默认编码是Latin1,不支持中文,要支持中文的话 ...
- Hadoop集群-HDFS集群中大数据运维常用的命令总结
Hadoop集群-HDFS集群中大数据运维常用的命令总结 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 本篇博客会简单涉及到滚动编辑,融合镜像文件,目录的空间配额等运维操作简介.话 ...
- Linux运维常用150个命令
Linux运维常用150个命令 转载自:www.cnblogs.com/bananaaa/p/7774467.html 命令 功能说明 线上查询及帮助命令(2个) man 查看命令帮助,命令的词典,更 ...
- Linux运维常用的几个命令介绍【转】
Linux运维常用的几个命令介绍 1. 查看系统内核版本 [root@funsion geekxa]# cat /etc/issue CentOS release 6.5 (Final) Kerne ...
- 14-redis运维常用命令
一:运维常用的server端命令 TIME 查看时间戳与微秒数 DBSIZE 查看当前库中的key数量 BGREWRITEAOF 后台进程重写AOF BGSAVE 后台保存rdb快照 ...
- 常用MySQL语句整合
常用MySQL语句整合 1. MySQL服务的配置和使用 修改MySQL管理员的口令:mysqladmin –u root password 密码字符串 如:mysqldmin –u root pas ...
随机推荐
- 基于Spring Boot和Shiro的后台管理系统FEBS
FEBS是一个简单高效的后台权限管理系统.项目基础框架采用全新的Java Web开发框架 —— Spring Boot 2.0.3,消除了繁杂的XML配置,使得二次开发更为简单:数据访问层采用Myba ...
- Spring事务嵌套
学习一下Spring的事务嵌套:https://blog.csdn.net/zmx729618/article/details/77976793 重点句子: Juergen Hoeller 的话: ...
- [LeetCode]最大系列(最大正方形221,最大加号标志764)
221. 最大正方形 题目描述: 在一个由 0 和 1 组成的二维矩阵内,找到只包含 1 的最大正方形,并返回其面积. 示例: 输入: 1 0 1 0 0 1 0 1 1 1 1 1 1 1 1 1 ...
- ②---Java开发工具Eclipse安装配置
Java开发工具Eclipse安装及配置 以下将为大家介绍Java开发工具Eclipse安装及配置. 一.下载Eclipse安装文件 正所谓工欲善其事必先利其器,我们在开发java语言过程中同样需要依 ...
- Python框架学习之Flask中的常用扩展包
Flask框架是一个扩展性非常强的框架,所以导致它有非常多的扩展包.这些扩展包的功能都很强大.本节主要汇总一些常用的扩展包. 一. Flask-Script pip install flask-scr ...
- go标准库的学习-path/filepath
参考https://studygolang.com/pkgdoc 标准库path中有的该path/filepath库中都有,所以一般都使用path/filepath 导入方式: import &quo ...
- 一步一步和我学Apache JMeter
一. Apache JMeter介绍 1. Apache JMeter是什么? Apache JMeter 是Apache组织的开放源代码项目,是一个100%纯Java桌面应用,用于压力测试和性能测量 ...
- day07----字符编码解码、文件操作(1)
字符编码: 什么是字符编码? 字符编码是将人识别的字符转换成计算机能识别的二进制字符(01),转换的规则就是编码表. 人能识别的字符串 与 计算机能识别的二进制字符 两者之间对应关系构成的结构称为 ...
- JDK动态代理(1)-----------new 对象的方式
//case 1: 直接newHelloWorldImpl helloWorldImpl = new HelloWorldImpl(); //case 2: 反射拿到类之后,通过newInstance ...
- 初学Python—列表和元组
一.什么是列表 列表是一系列数据的集合 二.列表的引用 首先定义一个列表 names=["alex","bob","alice"," ...