Program, サーバー
MySQLからMariaDBへの移行作業メモ
最近晩ご飯はもっぱらざるそば。こんばんはころすけ(@wg_koro)です。
先日、こんな記事を読んだんですが
MySQL生みの親のMichael “Monty” Widenius氏に訊く「MySQLとMariaDB」(1/3):企業のIT・経営・ビジネスをつなぐ情報サイト EnterpriseZine (EZ) |
恥ずかしながら、MariaDBのこと知らなかった・・・。MariaDBはMySQLとほぼ100%の互換性を持っているデータベースです。
MariaDBの開発は、MySQLのオリジナルコードの作者でMySQL ABの創設者でもあるMichael “Monty” Wideniusにより、現在オラクルによって所有されているMySQLをフォークして立ち上げられたプロジェクトにより行われている。
MySQLがOracleに買収されてうんぬんという騒ぎは知っていたんですが、これは知らなかったなぁ。調べてみると、大手がどんどんMySQLからMariaDBに乗り換えているんですね。
グーグルがMySQLを切り捨ててMariaDBを採用 | ReadWrite Japan |
こちらはちょっと古い記事。
Fedora 19からはMySQLに代わりMariaDBを標準に採用「オラクルはMySQLプロジェクトをさらに閉鎖的にしている」。MariaDB Foundationもすでに設立 - Publickey |
これらの記事を読んでいるうちに、このブログサーバーのDBもMySQLからMariaDBに乗り換えたくなった。MySQL古いし(5.1)。 → 載せ替えてみた。
移行作業はびっくりするくらいあっさりと終わったので、その工程をメモっておきます。あ、環境はCentOS6です。
リポジトリを追加
MariaDBの公式ページにリポジトリ情報が載っているので、それをコピーして使います。https://downloads.mariadb.org/mariadb/repositories/#mirror=yamagata-university
1 2 3 4 5 6 7 8 9 10 |
$ sudo vi /etc/yum.repos.d/mariadb.repo # 中にコピペしてきた内容を書き込む # MariaDB 10.0 CentOS repository list - created 2014-03-06 07:56 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 |
念のため、今のMySQLデータを全てバックアップ
1 |
mysqldump --all-databases --user=root --password --master-data > alldata.sql |
MySQLを停止
1 2 |
sudo chkconfig mysqld off sudo service mysqld stop |
MySQL一式を削除
1 |
sudo yum remove mysql* mysql-server mysql-devel mysql-libs |
MariaDB一式インストール
1 |
sudo yum install MariaDB-devel MariaDB-client MariaDB-server -y |
各言語のMySQLライブラリを入れ直す
1 2 3 |
# MySQLアンインストール時にphp54-mysqldが外れたのでいれなおす # この時、使用している各言語のMySQLライブラリをチェックしたほうがよいと思われる。gemとか。 sudo yum install php54-mysqld |
my.cnfをバックアップから戻す
/etc/my.cnf はMySQL一式アンインストール時に /etc/my.cnf.rpmsave にバックアップされています。それを戻す。
1 |
sudo cp /etc/my.cnf.rpmsave /etc/my.cnf |
MariaDBスタート
MySQLとほぼ同じコマンドがそのまま使えます。
1 2 3 4 5 |
# MariaDBスタート sudo service mysql start # 自動起動設定 sudo chkconfig mysql on |
ログインしてみる
MySQLログインと同じ。
1 |
$ mysql -u root -p |
MariaDBが動いてますね。
1 2 3 4 5 6 7 8 9 |
Welcome to the MariaDB monitor. Commands end with ; or g. Your MariaDB connection id is 499 Server version: 10.0.8-MariaDB-log MariaDB Server Copyright (c) 2000, 2013, Oracle, Monty Program Ab and others. Type 'help;' or 'h' for help. Type 'c' to clear the current input statement. MariaDB [(none)]> |
バックアップとったけど不要だった
最初にmysqldumpしましたが、全データが損傷無く残っていたのでデータ流し込みは不要でした。
あっさり終わった
以上で作業は終了してしまいました。想像以上にさっくりと終わった。あらびっくり。
Spiderストレージエンジンもデフォルトでバンドルされているみたいだし、使い勝手よさそう。今後はMariaDB使って開発しよっと。
シャーディングを実現するSpiderストレージエンジン、MariaDBがバンドル開始 - Publickey |
[…] MySQLからMariaDBへの移行作業メモ […]