ときどき書いてますが,全ての交信データ(ログデータ)は,MariaDBに入れてます.そのマネージメントは,自作のPerlスクリプトと,PhpMySQLでやってます.
MariaDBはMySQLに完全に置き換え可能なもので,バイナリーコンパチということになっています.つまりMariaDBですが,コマンドはmysql(関連アプリはmysql_*)で,MySQLを利用するアプリも,MySQLで使用していた時のまま使えます.
そのため,MySQLとMariaDBは普通は共存させません.
しかし,MacPortsでは,何をどう考えてそうしているのか解りませんが,MySQLとMariaDBを共存させることができます.そのため,MariaDBを使うためには,明示的にMariaDBを指定しなければなりません.
自作のPerlスクリプトはMySQLと接続するため,CPANのDBD::MySQLというモジュールを使っています.このモジュールをMacPortsでインストールしようとすると,依存性のあるmysql57をbuildしようとしますが,cmakeがエラーを出して失敗します.ためしに,mysql56, 55も試しましたがダメです.
MacPortsでMariaDBのインストールは何の問題もなくできました😓
普通はMariaDBがあれば,DBD::MySQLで接続できるんですが,DBD::MariaDBなどというおかしなモジュールを介さなければならず,自作のスクリプトを書き換えなければなりません.それはたやすいことなんですが,移植性ががぜん落ちます.
さて困りました.問題点を書き出せば,解決が見えてくるかなと思いましたが,今のところ何にも見えません😓
他に試したけど効果がなかったこと
- Oracle MySQL community serverのインストール(macOS版 v8.0.x)
なぜMySQLではなくMariaDBを採用されたのですか?ORACL嫌い?(笑
JE6LVE Takahashiさん,コメントありがとうございます.
ORACLEは嫌われているようで,多くのLinux distributionが,MariaDBをデフォルトにしたり,入れ替えたりしているようで,その流れに習っています.
https://mariadb.com/kb/en/distributions-which-include-mariadb/