Nagiosモニタmysqlライブラリからエラー:libmysqlclient.so.18: cannot open shared object file: No such
8616 ワード
mysqlのslaveモニタリングをするときはcheck_が必要ですmysqlスクリプト、checkの時にエラーを報告します:
error while loading shared libraries: libmysqlclient.so.18: cannot open shared object file: No such file or directory
1エラーメッセージは次のとおりです.
[root@slave ~]#/usr/local/nagios/libexec/check_mysql -uadmin -P3306 -S/data/mbdata/open/mysql.sock -H127.0.0.1 -pxxxxx -d openshop -w 300 -c 360
/usr/local/nagios/libexec/check_mysql: error while loading shared libraries: libmysqlclient.so.18: cannot open shared object file: No such file or directory
[root@slave ~]#
2,check_を実行するmysql--helpは命令を見て、発見してもだめです.
3、間違いを報告したlibmysqlclientを見てください.so.18ファイルが存在するかどうか:[root@db-m1-slave-1 ~]# find/-name libmysqlclient.so.18
/mysql-5.6.12/libmysql/libmysqlclient.so.18
/usr/local/mysql/lib/libmysqlclient.so.18
ファイルは存在しますが、認識できません.
4,libmysqlclientの問題かもしれません
mysqlclient library linkage problemを検索します.
記事のアドレスを見つけます.http://stackoverflow.com/questions/2080679/mysqlclient-library-linkage-problem
/etc/ldが見つかりました.so.conf.d/mysql-x86_64.confというプロファイルを開いてみましょう
cat/etc/ld.so.conf.d/mysql-x86_64.conf
[root@slave ~]# cat/etc/ld.so.conf.d/mysql-x86_64.conf
/usr/lib64/mysql
ディレクトリ/usr/lib 64/mysqlにアクセスして、次のファイルを確認します.
[root@slave ~]# ll/usr/lib64/mysql
総使用量3108
lrwxrwxrwx. 1 root root 26 9月29 2013 libmysqlclient_r.so.16 -> libmysqlclient_r.so.16.0.0
-rwxr-xr-x.1 root root 15951762 12月8 2012 libmysqlclient_r.so.16.0.0
lrwxrwxrwx. 1 root root 24 9月29 2013 libmysqlclient.so.16 -> libmysqlclient.so.16.0.0
-rwxr-xr-x.1 root root 1582952 12月8 2012 libmysqlclient.so.16.0.0
いくつかのソフト接続があり、接尾辞でsoを表す.16とかですが、soはありません.18など、ここに接続されていないようですが、/usr/local/mysql/lib/libmysqlclientをソフト接続する必要があるかもしれません.so.18は/usr/lib 64/libmysqlclientになります.so.18、すぐにソフト接続をします:ln-s/usr/local/mysql/lib/libmysqlclient.so.18/usr/lib64/libmysqlclient.so.18、その後、checkの下で、checkは以下のように成功した.
5、check_の実行を続行mysqlちょっとチェックして[root@slave ~]#/usr/local/nagios/libexec/check_mysql -unagios -P3306 -S -H127.0.0.1 --password='xxx@0512'/usr/local/mysql/mysql.sock -d test -w 60 -c 100
slave query error: Access denied; you need (at least one of) the SUPER, REPLICATION CLIENT privilege(s) for this operation
[root@slave ~]#
アカウントエラーを報告し、
check
slave query error: Access denied; you need (at least one of) the SUPER, REPLICATION CLIENT privilege(s) for this operation
アカウントエラー、mysqlインタフェースにアクセスしてnagiosアカウント権限を付与
mysql> GRANT PROCESS, SUPER, REPLICATION CLIENT ON *.* TO nagios@'%' identified by 'xxx@0512';
6,再check[root@slave ~]#/usr/local/nagios/libexec/check_mysql -unagios -P3306 -S -Hlocalhost --password='xxx@0512' -s/usr/local/mysql/mysql.sock -d test -w 60 -c 100
Slave IO: Yes Slave SQL: No Seconds Behind Master: (null)
mysql slave検出に失敗しました.エラーメッセージがあります.
Slave IO: Yes Slave SQL: No Seconds Behind Master: (null)
mysqlウィンドウに入って詳細を見てください
について
Slave IO:Yes Slave SQL:No Seconds Behind Master:(null)、blog参照:http://blog.csdn.net/mchdba/article/details/25738991
7,slaveはやり直してからcheckし,slave状態は正常である.
#/usr/local/nagios/libexec/check_mysql -unagios -P3306 -S -s/usr/local/mysql/mysql.sock -Hlocalhost --password='xxx@0512' -d test -w 60 -c 100
error while loading shared libraries: libmysqlclient.so.18: cannot open shared object file: No such file or directory
1エラーメッセージは次のとおりです.
[root@slave ~]#/usr/local/nagios/libexec/check_mysql -uadmin -P3306 -S/data/mbdata/open/mysql.sock -H127.0.0.1 -pxxxxx -d openshop -w 300 -c 360
/usr/local/nagios/libexec/check_mysql: error while loading shared libraries: libmysqlclient.so.18: cannot open shared object file: No such file or directory
[root@slave ~]#
2,check_を実行するmysql--helpは命令を見て、発見してもだめです.
[root@slave ~]# /usr/local/nagios/libexec/check_mysql --help
/usr/local/nagios/libexec/check_mysql: error while loading shared libraries: libmysqlclient.so.18: cannot open shared object file: No such file or directory
[root@slave ~]#
3、間違いを報告したlibmysqlclientを見てください.so.18ファイルが存在するかどうか:[root@db-m1-slave-1 ~]# find/-name libmysqlclient.so.18
/mysql-5.6.12/libmysql/libmysqlclient.so.18
/usr/local/mysql/lib/libmysqlclient.so.18
ファイルは存在しますが、認識できません.
4,libmysqlclientの問題かもしれません
mysqlclient library linkage problemを検索します.
記事のアドレスを見つけます.http://stackoverflow.com/questions/2080679/mysqlclient-library-linkage-problem
/etc/ldが見つかりました.so.conf.d/mysql-x86_64.confというプロファイルを開いてみましょう
cat/etc/ld.so.conf.d/mysql-x86_64.conf
[root@slave ~]# cat/etc/ld.so.conf.d/mysql-x86_64.conf
/usr/lib64/mysql
ディレクトリ/usr/lib 64/mysqlにアクセスして、次のファイルを確認します.
[root@slave ~]# ll/usr/lib64/mysql
総使用量3108
lrwxrwxrwx. 1 root root 26 9月29 2013 libmysqlclient_r.so.16 -> libmysqlclient_r.so.16.0.0
-rwxr-xr-x.1 root root 15951762 12月8 2012 libmysqlclient_r.so.16.0.0
lrwxrwxrwx. 1 root root 24 9月29 2013 libmysqlclient.so.16 -> libmysqlclient.so.16.0.0
-rwxr-xr-x.1 root root 1582952 12月8 2012 libmysqlclient.so.16.0.0
いくつかのソフト接続があり、接尾辞でsoを表す.16とかですが、soはありません.18など、ここに接続されていないようですが、/usr/local/mysql/lib/libmysqlclientをソフト接続する必要があるかもしれません.so.18は/usr/lib 64/libmysqlclientになります.so.18、すぐにソフト接続をします:ln-s/usr/local/mysql/lib/libmysqlclient.so.18/usr/lib64/libmysqlclient.so.18、その後、checkの下で、checkは以下のように成功した.
[root@slave ~]# ln -s /usr/local/mysql/lib/libmysqlclient.so.18 /usr/lib64/libmysqlclient.so.18
[root@slave ~]#
[root@slave ~]#
[root@slave ~]# /usr/local/nagios/libexec/check_mysql --help
check_mysql v2.0 (nagios-plugins 2.0)
Copyright (c) 1999-2014 Nagios Plugin Development Team
<[email protected]>
This program tests connections to a MySQL server
Usage:
check_mysql [-d database] [-H host] [-P port] [-s socket]
[-u user] [-p password] [-S] [-l] [-a cert] [-k key]
[-C ca-cert] [-D ca-dir] [-L ciphers] [-f optfile] [-g group]
Options:
-h, --help
Print detailed help screen
-V, --version
Print version information
--extra-opts=[section][@file]
Read options from an ini file. See
https://www.nagios-plugins.org/doc/extra-opts.html
for usage and examples.
..................................
-l, --ssl
Use ssl encryptation
-C, --ca-cert=STRING
Path to CA signing the cert
-a, --cert=STRING
Path to SSL certificate
-k, --key=STRING
Path to private SSL key
-D, --ca-dir=STRING
Path to CA directory
-L, --ciphers=STRING
List of valid SSL ciphers
.................................................
Send email to [email protected] if you have questions regarding use
of this software. To submit patches or suggest improvements, send email to
[email protected]
[root@slave ~]#
5、check_の実行を続行mysqlちょっとチェックして[root@slave ~]#/usr/local/nagios/libexec/check_mysql -unagios -P3306 -S -H127.0.0.1 --password='xxx@0512'/usr/local/mysql/mysql.sock -d test -w 60 -c 100
slave query error: Access denied; you need (at least one of) the SUPER, REPLICATION CLIENT privilege(s) for this operation
[root@slave ~]#
アカウントエラーを報告し、
check
slave query error: Access denied; you need (at least one of) the SUPER, REPLICATION CLIENT privilege(s) for this operation
アカウントエラー、mysqlインタフェースにアクセスしてnagiosアカウント権限を付与
mysql> GRANT PROCESS, SUPER, REPLICATION CLIENT ON *.* TO nagios@'%' identified by 'xxx@0512';
6,再check[root@slave ~]#/usr/local/nagios/libexec/check_mysql -unagios -P3306 -S -Hlocalhost --password='xxx@0512' -s/usr/local/mysql/mysql.sock -d test -w 60 -c 100
Slave IO: Yes Slave SQL: No Seconds Behind Master: (null)
mysql slave検出に失敗しました.エラーメッセージがあります.
Slave IO: Yes Slave SQL: No Seconds Behind Master: (null)
mysqlウィンドウに入って詳細を見てください
[root@slave ~]# mysql
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 23
Server version: 5.6.12-log Source distribution
Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> show slave status\G
*************************** 1. row ***************************
Slave_IO_State: Waiting for master to send event
Master_Host: 10.xx.3.xx
Master_User: repl
Master_Port: 3306
Connect_Retry: 60
Master_Log_File: mysql-bin.010294
Read_Master_Log_Pos: 21764
Relay_Log_File: mysql-relay-bin.003125
Relay_Log_Pos: 91805
Relay_Master_Log_File: mysql-bin.010275
Slave_IO_Running: Yes
Slave_SQL_Running: No
Replicate_Do_DB: xx,xx_db,xxsystem
Replicate_Ignore_DB:
Replicate_Do_Table:
Replicate_Ignore_Table:
Replicate_Wild_Do_Table:
Replicate_Wild_Ignore_Table:
Last_Errno: 1590
Last_Error: The incident LOST_EVENTS occured on the master. Message: error writing to the binary log
Skip_Counter: 0
Exec_Master_Log_Pos: 91642
Relay_Log_Space: 1780004
Until_Condition: None
Until_Log_File:
Until_Log_Pos: 0
Master_SSL_Allowed: No
Master_SSL_CA_File:
Master_SSL_CA_Path:
Master_SSL_Cert:
Master_SSL_Cipher:
Master_SSL_Key:
Seconds_Behind_Master: NULL
Master_SSL_Verify_Server_Cert: No
Last_IO_Errno: 0
Last_IO_Error:
Last_SQL_Errno: 1590
Last_SQL_Error: The incident LOST_EVENTS occured on the master. Message: error writing to the binary log
Replicate_Ignore_Server_Ids:
Master_Server_Id: 71
Master_UUID: 9b0dcf62-29f4-11e3-9471-677b33903869
Master_Info_File: mysql.slave_master_info
SQL_Delay: 0
SQL_Remaining_Delay: NULL
Slave_SQL_Running_State:
Master_Retry_Count: 86400
Master_Bind:
Last_IO_Error_Timestamp:
Last_SQL_Error_Timestamp: 140512 11:29:54
Master_SSL_Crl:
Master_SSL_Crlpath:
Retrieved_Gtid_Set:
Executed_Gtid_Set:
Auto_Position: 0
1 row in set (0.00 sec)
mysql>
について
Slave IO:Yes Slave SQL:No Seconds Behind Master:(null)、blog参照:http://blog.csdn.net/mchdba/article/details/25738991
7,slaveはやり直してからcheckし,slave状態は正常である.
#/usr/local/nagios/libexec/check_mysql -unagios -P3306 -S -s/usr/local/mysql/mysql.sock -Hlocalhost --password='xxx@0512' -d test -w 60 -c 100
[root@slave ~]# /usr/local/nagios/libexec/check_mysql -unagios -P3306 -S -s /usr/local/mysql/mysql.sock -Hlocalhost --password='xxx@0512' -d test -w 60 -c 100
Uptime: 18431321 Threads: 3 Questions: 1447646 Slow queries: 735 Opens: 18605 Flush tables: 1 Open tables: 214 Queries per second avg: 0.078 Slave IO: Yes Slave SQL: Yes Seconds Behind Master: 0|Connections=1380c;;; Open_files=32;;; Open_tables=214;;; Qcache_free_memory=66980240;;; Qcache_hits=778c;;; Qcache_inserts=5338c;;; Qcache_lowmem_prunes=0c;;; Qcache_not_cached=12516c;;; Qcache_queries_in_cache=34;;; Queries=1447647c;;; Questions=99727c;;; Table_locks_waited=0c;;; Threads_connected=1;;; Threads_running=1;;; Uptime=18431321c;;; 'seconds behind master'=0.000000s;60.000000;100.000000;
[root@db-m1-slave-1 ~]#