BLOGTIMES
2015/03/03

CentOS7 標準の MariaDB で base64 エンコード/デコードしたい

  centos7  mysql 
このエントリーをはてなブックマークに追加

以前、CentOS 6.x で実現したPostfix + MySQL + postfixadmin + DovecotCentOS 7.x + Postfix + MariaDB + postfixadmin + Dovecot でやろうとしたら、思わぬところで躓いてしまいました。

かなり CentOS 7 の systemd や FirewallD などには慣れてきたので、プロダクトのインストールはスムーズに済んだのですが、動かしてみると MariaDB にうまくユーザー情報が書き込みされません。あれこれ調べてみると、CentOS 7 の標準の MariaDB では MySQL 5.6 では使えていた TO_BASE64() / FROM_BASE64() が使えないようです。

実際にコンソールで試してみるとこんな感じなのでしょんぼり。

MariaDB [(none)]> SELECT TO_BASE64('Maria'); ERROR 1305 (42000): FUNCTION TO_BASE64 does not exist

マニュアルをよく見ると、MariaDB 10.0.5 以降*1って書いてありますね。仕方がないので、以前 URL エンコードをストアドで実現したときのように、今回もストアドで・・・・・・と思っていろいろ調べてみたところ、 UDF で実現できるというエントリを見つけたので、今回はこれを使うことにしました。

やり方は下記のサイトそのままでOK。CentOS 7 の MariaDB で問題なく導入できました。


トラックバックについて
Trackback URL:
お気軽にどうぞ。トラックバック前にポリシーをお読みください。[policy]
このエントリへのTrackbackにはこのURLが必要です→https://blog.cles.jp/item/7438
Trackbacks
このエントリにトラックバックはありません
Comments
愛のあるツッコミをお気軽にどうぞ。[policy]
古いエントリについてはコメント制御しているため、即時に反映されないことがあります。
コメントはありません
Comments Form

コメントは承認後の表示となります。
OpenIDでログインすると、即時に公開されます。

OpenID を使ってログインすることができます。

Identity URL: Yahoo! JAPAN IDでログイン