web-dev-qa-db-ja.com

MariaDB 10.0へのタイムゾーンデータのインストール

昨日、DBサーバーにタイムゾーンを設定しました(説明 here )。そのためには、mysql_tzinfo_to_sql実行可能ファイルを使用する必要があります。幸い、これはすでにサーバー上に存在しており、タイムゾーンデータの変換はスムーズに行われました。

しかし、今日、スレーブが同じエラーを生成していることがわかります。問題は、スレーブにmysql_tzinfo_to_sql実行可能ファイルがないように見えることです。 apt-getは、これらが他のパッケージに存在することを通知します。

root@slave:~# mysql_tzinfo_to_sql /usr/share/zoneinfo/|mysql -u root mysql
The program 'mysql_tzinfo_to_sql' can be found in the following packages:
 * mysql-server-5.5
 * mariadb-server-5.5
 * mysql-server-5.6
 * percona-xtradb-cluster-server-5.5
Try: apt-get install <selected package>

これらのうちの1つをインストールすると(おそらくmariadb-server-5.5を選択する)、現在インストールされているバージョンのMariaDB(10.0.17-MariaDB-1〜precise-log)と競合するのではないかと心配です。

このタイムゾーンデータをスレーブにインストールする方法を教えてください

  • マスターのDBから簡単にコピーできますか?
  • mariadb-server-5.5のインストールに関する私の懸念は不当ですか?
  • 私が見逃しているまったく異なるアプローチはありますか?
2
rinogo

私は解決策を見つけました。このソリューションの鍵は、タイムゾーンSQLを生成できることを知っているシステム(マスター)がすでにあったことです。マスターでSQLを生成し、スレーブに転送して実行しました!

マスター上

user@master [~]# mysql_tzinfo_to_sql /usr/share/zoneinfo/ > timezones.sql

スレーブ上

root@slave:~# scp -P2223 user@master:timezones.sql .
user@master's password: 
stdin: is not a tty
timezones.sql                                                                                                                                   100% 4562KB   2.2MB/s   00:02    
root@slave:~# cat timezones.sql | mysql -u root mysql

スレーブでSTART SLAVEを実行した後、すべてがうまくいきました!

でも、もともと私が提起した質問に誰かが答えてくれるかどうかまだ気になります!

0
rinogo

これらのいずれかをインストールすると(mariadb-server-5.5を選択する可能性が高い)、現在インストールされているMariaDBのバージョン(10.0.17-MariaDB-1~preciseと競合する可能性があります。 -log)。

Ubuntu Preciseは12.04にリリースされました。それはとんでもない古いです、そしてあなたが質問をしたときでした。そのため、MariaDBのバージョンも古すぎました。 MariaDBは10.0.31で正確なサポートを終了しました。 Debian/Ubuntuの目のバージョンのMariaDBで非公式に実行しているため、システムでの動作は保証されていません。

そうは言っても、問題は基本的に、MariaDBを誰がパッケージ化したかということです。 MariaDB アップストリームから取得したようです。だからあなたが回避策を持っている間、質問はこのように表現する方が良いです

  • MariaDBはmysql_tzinfo_to_sqlをどこにインストールしますか?

明らかにそれはあなたの道にありません、あなたはそれを見つけることができます

  1. dpkg -cからダウンロードしたパッケージを実行します。
  2. apt-fileを使用
  3. 実行中:Sudo updatedb; locate mysql_tzinfo_to_sql;
1
Evan Carroll