標籤:get sysconf using 啟動 cal script ges arc ora
問題說明:
下載binlog日誌
mysqlbinlog mysq-bin.000285查看binlog日誌的時候報錯
ERROR: Error in Log_event::read_log_event(): ‘Sanity check failed‘, data_len: 73, event_type: 30
ERROR: Could not read entry at offset 240: Error in log format or read error.
注釋:
由於mysqlbinlog工具的版本和mysql資料庫版本不相容,或mysql資料庫的版本太低
查看下mysqlbinlog的版本
mysqlbinlog -V
mysqlbinlog Ver 3.3 for Linux at x86_64
查看下mysql的版本
mysql -V
mysql Ver 14.14 Distrib 5.1.73, for redhat-linux-gnu (x86_64) using readline 5.1
我們看到mysql資料庫版本是5.1的,而mysqlbinlog版本是3.3的,可以推斷出是mysql資料庫版本過低導致的mysqlbinlog命令不可用
問題解決:
升級mysql資料庫
升級版本:MySQL版本:mysql-5.6.10
mysql安裝目錄:/usr/local/mysql
mysql資料庫存放目錄: /data/mysql
一、下載源碼包
1.下載mysql源碼
wget http://cdn.mysql.com/archives/mysql-5.6/mysql-5.6.10.tar.gz
2.下載cmake源碼
Wget http://www.cmake.org/files/v2.8/cmake-2.8.10.tar.gz
二、安裝編譯工具以及依賴包
yum -y install make cmake gcc gcc-c++-* libtool ncurses-devel glibc glib2-devel openssl-devel pcre-devel bzip2-devel perl-devel
三、安裝cmake
cd /data/packages/ 進入軟體包存放目錄
tar -xvzf cmake-2.8.10.tar.gz
cd cmake-2.8.10
./configure
make
make install
四、安裝mysql
groupadd mysql 添加mysql組
useradd -g mysql mysql 建立mysql使用者並加入到mysql組
mkdir -p /data/mysql 建立mysql資料庫存放目錄
chown -R mysql:mysql /data/mysql 設定mysql資料庫存放目錄許可權
mkdir -p /usr/local/mysql 建立mysql安裝目錄
cd /data/packages/ 進入軟體包存放目錄
tar -xvzf mysql-5.6.10.tar.gz 解壓mysql源碼包
cd mysql-5.6.10 切換到解壓目錄下
cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/data/mysql -DSYSCONFDIR=/etc 檢測環境
make 編譯
make install 安裝
rm -rf /etc/my.cnf 刪除系統預設的設定檔
cd /usr/local/mysql 進入mysql安裝目錄
./scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql 產生mysql系統資料庫
ln -s /usr/local/mysql/my.cnf /etc/my.cnf 添加軟串連
cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld 將mysql加入到系統啟動
chmod 755 /etc/init.d/mysqld 添加執行許可權
chkconfig mysqld on 加入到開機自啟動
vim /etc/rc.d/init.d/mysqld
在該檔案中修改
basedir=/usr/local/mysql mysql程式安裝目錄
datadir=/data/mysql mysql資料庫存放路徑
五、啟動資料庫
service mysqld start
六、將mysql服務加入到系統內容變數
vim /etc/profile
在該檔案的最後添加下面一行
export PATH=$PATH:/usr/local/mysql/bin
六、設定mysql資料庫密碼
進入資料庫
/usr/local/mysql/bin/mysql
SET PASSWORD = PASSWORD("newpassword");
flush privileges;
七、重啟資料庫
service mysqld restart
八、繼續查詢binlog
命令列輸入mysqbinlog mysql-bin.00020845
發現還是不能查看
九、查看mysql資料庫版本資訊
命令列輸入
mysql -V
mysql Ver 14.14 Distrib 5.1.73, for redhat-linux-gnu (x86_64) using readline 5.1
資料庫版本沒有變化,還是5.1版本
進入資料庫查看mysql版本
/usr/local/mysql/bin/mysql -uroot -p 密碼
mysql> select version();
+-----------+
| version() |
+-----------+
| 5.6.10 |
+-----------+
1 row in set (0.00 sec)
mysql>
資料庫版本是mysql-5.6.10
執行下面操作
cp /usr/local/mysql/bin/mysql /usr/bin/mysql
再次查看資料庫版本
mysql -V
mysql Ver 14.14 Distrib 5.6.10, for Linux (x86_64) using EditLine wrapper
版本已經更新為mysql-5.6.10
重新查詢binlog
Mysqlbinlog mysql-bin.0003325
發現還是報錯
執行下面操作
cp /usr/local/mysql/bin/mysqlbinlog /usr/bin/mysqlbinlog
完成之後再次查看binlog
mysqbinlog mysql-bin.00032545
發現查詢成功
mysql故障--mysqlbinlog無法查詢日誌問題說明