[Zabbix][MySQL][MariaDB] Zabbixで使用しているデータベースをMySQL 5.6からMariaDB 10.0に移行してみた。 #zabbix #mariadb

2014/05/03 10:55AIX、UNIX、Linuxmariadb,mysql,zabbix

何番煎じか分かりませんが、自宅環境で使用しているZabbixのデータベースをMySQL 5.6からMariaDB 10.0.10に移行してみました。

特に理由は無いのですが、職場でMariaDBが~という話が聞こえてきていたので気になったので入れ替えてみることにしました。

検証環境:

cat /etc/redhat-release
CentOS release 6.5 (Final)
Linux zabbix.kometch.local 2.6.32-431.11.2.el6.x86_64 #1 SMP Tue Mar 25 19:59:55 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
目次

手順

1. Zabbix関連サービスを停止する。

service zabbix-server stop
service zabbix-agent stop

2. まずは念のためのDBのバックアップ。

mysqldump -uroot -p -x --all-databases > zabbix.sql

3. my.cnfもバックアップ

cp -p /etc/my.cnf /root/

4. 上記を参考にMariaDBのレポジトリを追加する。

vim /etc/yum.repos.d/MariaDB.repo
# MariaDB 10.0 CentOS repository list - created 2014-05-02 12:38 UTC
# http://mariadb.org/mariadb/repositories/
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.0/centos6-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1

5. 既存のMySQL関連のアプリを削除する。

yum remove mysql-server mysql-libs mysql-devel mysql*

6. 追加したレポジトリからMariaDBをインストールする。

yum install MariaDB-server MariaDB-client php-mysql

7. MariaDBを起動する。

service mysql start

8. MariaDBに接続するも何故かエラーが。

# mysql -uroot -p
Enter password:
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

9. 一旦セーフモードで起動し、パスワードを変更する。

mysqld_safe --skip-grant-tables &
mysql -u root
MariaDB [(none)]> use mysql;
MariaDB [mysql]> grant all privileges on *.* to root@localhost identified by 'パスワード' with grant option;
MariaDB [mysql]> grant all privileges on *.* to zabbix@localhost identified by 'パスワード' with grant option;
MariaDB [mysql]> flush privileges;
MariaDB [mysql]> quit;

10. MariaDBを通常起動する。

kill -9 [mysqld_safe のPID] [mysqld のPID]
service mysql start
Starting MySQL.. SUCCESS!

11. データベースのアップグレードを行う。

mysql_upgrade -uroot -p
Phase 1/3: Fixing table and database names
Phase 2/3: Checking and upgrading tables
Processing databases
information_schema
mysql
mysql.columns_priv                                 OK
mysql.db                                           OK
mysql.event                                        OK
mysql.func                                         OK
mysql.help_category                                OK
mysql.help_keyword                                 OK
mysql.help_relation                                OK
mysql.help_topic                                   OK
mysql.innodb_index_stats                           OK
mysql.innodb_table_stats                           OK
mysql.ndb_binlog_index                             OK
mysql.plugin                                       OK
mysql.proc                                         OK
mysql.procs_priv                                   OK
mysql.proxies_priv                                 OK
mysql.servers                                      OK
mysql.slave_master_info                            OK
mysql.slave_relay_log_info                         OK
mysql.slave_worker_info                            OK
mysql.tables_priv                                  OK
mysql.time_zone                                    OK
mysql.time_zone_leap_second                        OK
mysql.time_zone_name                               OK
mysql.time_zone_transition                         OK
mysql.time_zone_transition_type                    OK
mysql.user                                         OK
performance_schema
zabbix
zabbix.acknowledges                                OK
zabbix.actions                                     OK
zabbix.alerts                                      OK
zabbix.application_template                        OK
zabbix.applications                                OK
zabbix.auditlog                                    OK
zabbix.auditlog_details                            OK
zabbix.autoreg_host                                OK
zabbix.conditions                                  OK
zabbix.config                                      OK
zabbix.dbversion                                   OK
zabbix.dchecks                                     OK
zabbix.dhosts                                      OK
zabbix.drules                                      OK
zabbix.dservices                                   OK
zabbix.escalations                                 OK
zabbix.events                                      OK
zabbix.expressions                                 OK
zabbix.functions                                   OK
zabbix.globalmacro                                 OK
zabbix.globalvars                                  OK
zabbix.graph_discovery                             OK
zabbix.graph_theme                                 OK
zabbix.graphs                                      OK
zabbix.graphs_items                                OK
zabbix.group_discovery                             OK
zabbix.group_prototype                             OK
zabbix.groups                                      OK
zabbix.history                                     OK
zabbix.history_log                                 OK
zabbix.history_str                                 OK
zabbix.history_str_sync                            OK
zabbix.history_sync                                OK
zabbix.history_text                                OK
zabbix.history_uint                                OK
zabbix.history_uint_sync                           OK
zabbix.host_discovery                              OK
zabbix.host_inventory                              OK
zabbix.hostmacro                                   OK
zabbix.hosts                                       OK
zabbix.hosts_groups                                OK
zabbix.hosts_templates                             OK
zabbix.housekeeper                                 OK
zabbix.httpstep                                    OK
zabbix.httpstepitem                                OK
zabbix.httptest                                    OK
zabbix.httptestitem                                OK
zabbix.icon_map                                    OK
zabbix.icon_mapping                                OK
zabbix.ids                                         OK
zabbix.images                                      OK
zabbix.interface                                   OK
zabbix.interface_discovery                         OK
zabbix.item_discovery                              OK
zabbix.items                                       OK
zabbix.items_applications                          OK
zabbix.maintenances                                OK
zabbix.maintenances_groups                         OK
zabbix.maintenances_hosts                          OK
zabbix.maintenances_windows                        OK
zabbix.mappings                                    OK
zabbix.media                                       OK
zabbix.media_type                                  OK
zabbix.node_cksum                                  OK
zabbix.nodes                                       OK
zabbix.opcommand                                   OK
zabbix.opcommand_grp                               OK
zabbix.opcommand_hst                               OK
zabbix.opconditions                                OK
zabbix.operations                                  OK
zabbix.opgroup                                     OK
zabbix.opmessage                                   OK
zabbix.opmessage_grp                               OK
zabbix.opmessage_usr                               OK
zabbix.optemplate                                  OK
zabbix.profiles                                    OK
zabbix.proxy_autoreg_host                          OK
zabbix.proxy_dhistory                              OK
zabbix.proxy_history                               OK
zabbix.regexps                                     OK
zabbix.rights                                      OK
zabbix.screens                                     OK
zabbix.screens_items                               OK
zabbix.scripts                                     OK
zabbix.service_alarms                              OK
zabbix.services                                    OK
zabbix.services_links                              OK
zabbix.services_times                              OK
zabbix.sessions                                    OK
zabbix.slides                                      OK
zabbix.slideshows                                  OK
zabbix.sysmap_element_url                          OK
zabbix.sysmap_url                                  OK
zabbix.sysmaps                                     OK
zabbix.sysmaps_elements                            OK
zabbix.sysmaps_link_triggers                       OK
zabbix.sysmaps_links                               OK
zabbix.timeperiods                                 OK
zabbix.trends                                      OK
zabbix.trends_uint                                 OK
zabbix.trigger_depends                             OK
zabbix.trigger_discovery                           OK
zabbix.triggers                                    OK
zabbix.user_history                                OK
zabbix.users                                       OK
zabbix.users_groups                                OK
zabbix.usrgrp                                      OK
zabbix.valuemaps                                   OK
Phase 3/3: Running 'mysql_fix_privilege_tables'...
OK

12. Zabbix関連サービスの起動を行う。

service zabbix-server start
service zabbix-agent start

13. Zabbixにログインできることを確認する。

この記事を書いた人
kometchtech

kometchtech
うつ病を患いながら、IT業界の末席にいるおっさんエンジニア。科学計算をしたことがないのに、HPC分野にお邪魔している。興味のある分野で学習したことをblogにまとめつつ、うつ病の経過症状のメモも置いておく日々。じつはRouterboard User Group JPの中の人でもある。
Amazon欲しいものリスト / Arm板を恵んでくれる人募集中

Buy Me A Coffee

2014/05/03 10:55AIX、UNIX、Linuxmariadb,mysql,zabbix