数据库的可用监控

监控 数据库是否连接和读写以及数据库的连接数



 1、确认数据库是否可以通过网络连接

   数据库的可用监控_第1张图片


     造成连接不成功的原因:防火墙

                                           TCP/IP连接被占满



     监控的方式:

              1、mysqladmin -u 监控用户 -p 密码 -h 监控的服务器地址 ping

                         首先我们在MySQL下要建立一个mysql 的用户并授权

                      

[sql] view plain copy print?
  1. CREATE USER 'xi'@'%' IDENTIFIED BY '123456';  

[sql] view plain copy print?
  1. GRANT ALL ON *.* TO 'xi'@'%';  


                        数据库的可用监控_第2张图片

             监控服务器远程连接

         

[plain] view plain copy print?
  1. mysqladmin -u xi -p  -h 192.168.1.175 ping  

在输入密码123456

           

  

                    

                   2、 telent ip db_port  (如果没有telnet命令 yum install telnet)

     数据库的可用监控_第3张图片

            3、使用程序通过网络建立数据库连接  (最好的方式)

 可以连接到数据库不代表数据库可用


2、确认数据库是可以读写

       1、定期检查数据库read_only参数是否为off

 数据库的可用监控_第4张图片

   2、建立监控表并对表中的数据进行更新(被监控的服务器上)



    3、只监控是否可读:执行简答的查询 select @@version

数据库的可用监控_第5张图片


3、确认数据库的连接数(十分重要)

可以连接mysql的线程是有限制的

     造成mysql连接数突然增长的连接数原因: eg:出现阻塞 eg:memecache缓存失效

怎么查看呢?

[sql] view plain copy print?
  1. show variables like 'max_connections';  


数据库的可用监控_第6张图片


查看当前连接数:

[sql] view plain copy print?
  1. show global status like 'Threads_connected';  

数据库的可用监控_第7张图片

我们用其他的服务器连接

[plain] view plain copy print?
  1. mysql -u xi -p -h 192.168.1.175  


数据库的可用监控_第8张图片



我们回到被监控的服务器再次查询连接数

数据库的可用监控_第9张图片

你可能感兴趣的:(mysql,php,mysql,数据库)