數據導出(備份)
mysqldump -h127.0.0.1 -uzabbix -pzabbix zabbix > zabbix.sql
數據導入(恢復)
mysql -h127.0.0.1 -uzabbix -pzabbix zabbix < zabbix.sql
修改zabbix配置
找到zabbix.conf.php文件,默認如下:
<?php
// Zabbix GUI configuration file.
global $DB;
$DB['TYPE'] = 'MYSQL';
$DB['SERVER'] = 'localhost';
$DB['PORT'] = '3306';
$DB['DATABASE'] = 'zabbix';
$DB['USER'] = 'zabbix';
$DB['PASSWORD'] = 'zabbix';
// Schema name. Used for IBM DB2 and PostgreSQL.
$DB['SCHEMA'] = '';
$ZBX_SERVER = 'localhost';
$ZBX_SERVER_PORT = '10051';
$ZBX_SERVER_NAME = 'zabbix';
$IMAGE_FORMAT_DEFAULT = IMAGE_FORMAT_PNG;
這裏需要將配置信息修改爲新的數據庫地址和端口以及用戶名庫名字
在zebbix測試創建新用戶能在新的數據庫生成數據以爲遷移成功了, 但是不一會訪問zabbix頁面會出現 Zabbix server is not running(前端顯示Zabbix server停止工作問題)
好吧, 我只能把zabbix服務停止, 使用命令
service zabbix-server stop
關於zabbix-server 卡死問題有幾種,但是在網上搜索都不是我的問題. 沒辦法我只能把 主進程殺死看看行不行 Main PID: 24677 (zabbix_server) ,
kill -9 24677
再執行zabbix服務停止, 這次直接卡死不動沒辦法 zabbix進程太多也可能互相有依賴. 最後沒辦法了批量殺死
ps -ef | grep zabbix-server | grep -v 'grep' | awk '{print $2}' |xargs kill -9
ps -ef : 打印出正在運行的進程信息
grep hello : 通過管道查找進程信息帶有zabbix-server關鍵字的進程
grep -v 'grep' : 去掉grep自身進程的信息
awk '{print $2}' : 取得進程號
xargs kill -9 : 殺死進程
另開窗口查看日誌。
tail -999f /var/log/zabbix/zabbix_server.log
查看日誌方向怎麼沒連接數據庫
想起來了當時只改了zabbix.conf.php這個文件, 還沒有改/etc/zabbix/zabbix_server.conf文件
這裏需要填寫切換的數據地址
這次應該沒問題了 執行:
service zabbix-server start
參看以下狀態:
service zabbix-server status
訪問zabbix頁面 正常