搭建MySQL主从后,很多时候不知道从的状态是否ok,有时候出现异常不能及时知道,这里通过shell脚本结合zabbix实现监控并告警 一般情况下,在MySQL的从上查看从的运行状态是通过Slave_IO_Running...agent端脚本编写及配置 说明:所有zabbix相关的脚本我都放在了/etc/zabbix/script/ 目录里面,下面这些都是在zabbix被监控端上操作,并且上面数据库是属于MySQL主从的从...# 获取MySQL slave状态 UserParameter=mysql.slave[*],/etc/zabbix/script/mysql_slvae_status.sh $1 3)重启zabbix-agent...线程的触发器 4)配置Slave_SQL_Running线程的触发器 5)配置触发动作 配置动作中需要执行的动作(发送消息给管理员) 配置状态恢复时的操作(同样发送消息给管理员) 最终查看监控项...至此,就完成了MySQL主从中从的状态监控了。
探测MySQL主从状态,如果从未同步,则发邮件通知运维人员。利用定时任务秒级监测! # -*- coding: utf-8 -* #! ... for ip in env.hosts: if ip in slave_ip: slave_ip = ip slave_io = run("mysql... -uroot -S /tmp/mysql_3306.sock -e 'show slave status\G'|grep Slave_IO_Running:|awk '{print $2}'") ...slave_sql = run("mysql -uroot -S /tmp/mysql_3306.sock -e 'show slave status\G'|grep Slave_SQL_Running... Master-Slave Warning . " TO = "test@qq.com" FROM = "test@qq.com" text = "%-20s MySQL
怎么进入mysql命令行呢?...mysql的安装目录下面有个bin目录,先用命令行进入该目录,然后用 mysql -uroot -p123456 来登录(注意:用户名和密码不用包含“”) 命令: show processlist; 如果是...show processlist;只列出前100条,如果想全列出请使用show full processlist; mysql> show processlist; 命令: show status; 命令...Aborted_connects 尝试已经失败的MySQL服务器的连接的次数。 Connections 试图连接MySQL服务器的次数。
/bin/bash Check MySQL_Slave Status MySQL version: 5.6.27 MySQL_PORT=netstat -an|grep "LISTEN"|grep "3306
query cache 是mysql性能优化时的重要指标,通过查看query cache的状态信息,就可以知道例如 缓存是否有碎片、命中缓存的数量、没用到缓存的次数 …… 使用方法 mysql>show...FLUSH QUERY CACHE 会对缓存中的碎片进行整理,从而得到一个空闲块 Qcache_free_memory 缓存中的空闲内存 Qcache_hits 多少次命中,通过这个参数可以查看到
之前部署了mysql主从同步环境(Mysql主从同步(1)-主从/主主环境部署梳理),针对主从同步过程中slave延迟状态的监控梳理如下: 在mysql日常维护工作中,对于主从复制的监控主要体现在: 1...监测Mysql主从数据一致性操作记录 2)监控主从同步延迟,同步延迟的检查工作主要从下面两方面着手: 1.一般的做法就是根据Seconds_Behind_Master的值来判断slave的延迟状态。...: 1)Slave_IO_Running、Slave_SQL_Running状态值,如果都为YES,则表示主从同步;反之,主从不同步。...来看下面几个状态: 设置pager,只查看关注的几个status值 mysql> pager cat | egrep -i 'system user|Exec_Master_Log_Pos|Seconds_Behind_Master...update ** Read_Master_Log_Pos: 445182239 Exec_Master_Log_Pos: 445175263 Seconds_Behind_Master: 1 再次查看下状态
/bin/bash cmd='mysql -uslave -ppasswd -P3306 -h 192.168.0.72 -Be' status=$cmd 'show slave status\G' Seconds_Behind_Master
WGCLOUD是一款开源运维监测平台,它有一个模块自定义监控项,可以执行一些我们自定义的指令或脚本,非常灵活实用本文我们尝试使用此功能来监测我们的mysql从节点是否在正常工作,如果如下两项值都为yes.../bin/bash#slave节点ipmysqlIP=192.168.1.2#portmysqlPort=3309#用户名username=root#密码password='123456'mysql -
slowlog-log-slower-than" 2) "1000" redis> CONFIG GET slowlog-max-len 1) "slowlog-max-len" 2) "1000" 查看... slow log 要查看 slow log ,可以使用 SLOWLOG GET 或者 SLOWLOG GET number 命令,前者打印所有 slow log ,最大长度取决于 slowlog-max-len...查看当前日志的数量 使用命令 SLOWLOG LEN 可以查看当前日志的数量。 请注意这个值和 slower-max-len 的区别,它们一个是当前日志的数量,一个是允许记录的最大日志的数量。
前提: mysql主从的搭建前提有: 两台虚拟机 两台虚拟机上都装有mysql,并且版本一样,两边的mysql数据库文件一致,mysql的安装方式我在前面博客已经介绍过了。...环境: Host Role IP mysql-1 Master 192.168.30.106 mysql-2 Slave 192.168.30.107 搭建 在主从服务器上都创建一个用户 $ mysql...开启服务 START SLAVE; SHOW SLAVE STATUS\G //查看状态 *************************** 1. row ********************..., mysql如何减少主从复制延迟: 如果延迟比较大,就先确认以下几个因素: 从库硬件比主库差,导致复制延迟 主从复制单线程,如果主库写并发太大,来不及传送到从库 就会导致延迟。...,如果连接建立失败,间隔多久后重试 通常配置以上2个参数可以减少网络问题导致的主从数据同步延迟 MySQL数据库主从同步延迟解决方案 最简单的减少slave同步延时的方案就是在架构上做优化,尽量让主库的
环境mysql 8.0.x 主从gtid: off问题和分析mysql从库延迟太大, SQL线程和IO线程都是Running的, 但延迟有5天左右....SQL线程状态为:applying batch of row changes (delete)图片解析相关relay log得到正在执行的事务信息mysqlbinlog -vvv --base64-output
服务状态查看 systemctl status halo.service 修改服务参数 vim /etc/systemd/system/halo.service 服务启停 service halo start
监控系统状态 netstat 查看网络状态 netstat -lnp 查看监听端口 netstat -an 查看系统的网络连接状况 netstat -lntp 只看出tcp的,不包含socket...linux中网络系统的状态信息 查看的就是tcp/ip通信的一个状态 netstat命令,查看监听端口 netstat -lnp 查看监听端口 l 就是监听的意思 tcp 25端口,是发邮件的端口...STREAM LISTENING 10994 1/systemd /run/systemd/private [root@hf-01 ~]# netstat命令 查看所有的连接状态...netstat -an 查看所有的连接状态 [root@hf-01 ~]# netstat -an Active Internet connections (servers and established...0.0.0.0:* 557/avahi-daemon: r [root@hf-01 ~]# netstat命令和awk相关的 查看所有状态的数字
netstat(network status网络状态)命令各个参数说明如下: -t : 指明显示TCP端口,t是TCP的首字母。...即可显示当前服务器上所有端口及进程服务,于grep结合可查看某个具体端口及服务情况: netstat -ntlp # 查看当前所有tcp端口 netstat -ntulp |grep 80 #...查看所有80端口使用情况 netstat -an | grep 3306 # 查看所有3306端口使用情况 netstat -lanp # 查看一台服务器上面哪些服务及端口 ps -ef |grep...mysqld # 查看一个服务有几个端口。...比如要查看mysqld netstat -pnt |grep :3306 |wc # 查看某一端口的连接数量,比如3306端口 netstat -anp |grep 3306 # 查看某一端口的连接客户端
MySQL中如果要查看InnoDB的状态,如果想看到更完整的信息,毫无疑问就是命令show engine innodb status。...问一个问题,在没有这些报告工具之前,我们要读取InnoDB的状态毫无疑问是命令的方式来触发,很多时候我们是执行了命令,然后上下翻屏幕去找相应的信息,很显然这些内容我们没有保留下来,show engine...innodb status的结果不是实时的,如果要想查看上一次的命令结果该怎么办呢,有一个小技巧。...首先查看mysqld的进程号。 # ps -ef|grep mysqld|grep -v grep root 2122 1 0 19:54 ?...# ll 4 lrwx------ 1 root root 64 Sep 12 23:29 4 -> /tmp/ibuuKHaH (deleted) 如果要查看命令的完整内容,则需要查看的就是4号文件。
创建各种的用户供对方使用 温馨提示: 本案例为双主从,也就是master同步到node,node同步到master。...单主从,就只需要不执行带*即可 #master的机器上 CREATE USER 'master'@'%' IDENTIFIED BY '123456'; #node的机器上(*) CREATE USER...用户,通过show master status 查看二进制文件名称还有pos位置,为slave配置复制位置 master node 5、分别切换master,注意master_log_file还有master_log_pos....000026',MASTER_LOG_POS=0; slave start; show slave status; 4、数据库主从日志很大 设置只保留30天的binlog (临时,重启mysql...这个参数会失败) set global expire_logs_days = 30; (永久,my.cnf中添加,重启后生效)、 expire_logs_days = 30 查看当前的日志保存天数 show
-R mysql:mysql /var/log/mysql 重启数据库后,查看以下配置是否生效 mysql> show variables like 'server_id'; +----------...> 在主库上建立用于主从复制的账号 mysql> CREATE USER 'rep1'@'%'; mysql> GRANT REPLICATION SLAVE ON *.* TO 'rep1'@'...%' identified by 'coolsummermoon'; 查看主库的二进制日志的名称 这里的Position和File后面会用到 mysql> show master status\G *...mysql> 修改my.cnf [root@localhost mysql]# cat my.cnf [mysqld] server-id=2 port=3306 重启数据库后,查看以下配置是否生效...',MASTER_LOG_FILE='mysql-bin.000003',MASTER_LOG_POS=154; mysql> start slave; 查看slave的状态 mysql> show slave
主库 打开 /etc/my.cnf #mysql master1 config [mysqld] server-id = 1 # 节点ID,确保唯一 log-bin = mysql-bin...#开启mysql的binlog日志功能 sync_binlog = 1 #控制数据库的binlog刷到磁盘上去 , 0 不控制,性能最好,1每次事物提交都会刷到日志文件中,性能最差...replication slave on *.* to 'repl_user'@'172.17.0.2' identified by 'repl_passwd'; 刷新权限 FLUSH PRIVILEGES; 3.查看...master的状态 show master status; mysql> show master status; ±-----------------±---------±-------------±...OK, 0 rows affected (0.04 sec) 在 Slave 的 MySQL 终端执行查看主从同步状态: show slave status \G;
mysql主从配置的流程大体如图: 1)master会将变动记录到二进制日志里面; 2)master有一个I/O线程将二进制日志发送到slave; slave有一个I/O线程把master发送的二进制写入到...by '123'; ##授权用户 grant all privileges on *.* to 'test'@'%' ; ###刷新权限 flush privileges; #查看主服务器状态(显示如下图...主服务器IP地址', master_user='之前在MySQL主服务器上面创建的用户名', master_password='之前创建的密码', master_log_file='MySQL主服务器状态中的二进制文件名...#启用从库 start slave; #查看从库状态(如下图) show slave status\G; ?...#查看数据库 show database; use test1; #查看表 show tables; #查看数据 select * from test1;
概念 主从同步:其实主从同步和Redis系列讲到的主从同步比较类似,在多个服务器部署Mysql服务,将其中一台Mysql服务设置为主数据库,其他的Mysql服务设置为从数据库,然后主从同步保证主从数据库数据的一致性...启动Mysql服务并且查看Mysql运行状态 systemctl start mysqld.service && systemctl status mysqld.service 5....接着登录mysql,创建从数据库root用户权限,然后重启mysql服务并登录查看主数据库的状态: ?...重启服务并登录,然后关联主数据库,然后启动slave并查看状态。如果可以查看到Slave_IO_Running以及Slave_SQL_Running都为Yes,则表示从数据库配置成功。...测试主从同步 首先,进入主数据库,插入一条数据: ? 然后进入从数据库查看数据是否存在: ? 可以看到我们主数据库更新的数据可以同步到从数据库中,实现主从数据库数据同步。