エックスサーバーでsv12301以降のDB接続ホスト名は、なんと「localhost」

少し前に、自分の学習&趣味用にエックスサーバーでアカウントをひとつ契約した。

 

早速DBを使ってみようと簡単なテーブルを作り、PDOで入出力のコードを書いて実行したところ、なぜか接続に失敗する。

 

エックスサーバーのQ&Aを調べてみたところ驚きの事実が判明した。

 

MariaDB 10.5をご使用の場合

MariaDB 10.5では、接続先のホストは「localhost」といったホスト名となります。
サーバーパネルの「MySQL設定」→「MySQLの一覧」ページ下部の情報よりご確認下さい。

参考: データベース(MySQL) - よくある質問 | レンタルサーバーならエックスサーバー

 

えっ

localhost

 

エックスサーバーでは、昨年3月以降の新規契約から提供するDBを

MySQL5.7→MariaDB10.5に変更したとのこと。

ちなみにMariaDBとはMySQLから派生したオープンソースのDBで、MySQLから徐々に置き換わっていっている。

 

MySQL5.7までは、接続先は

mysql○○.xserver.jp

という形式だったのだが、MariaDBになってからlocalhostに変わったのだそうだ。

 

よもやlocalhostとは。

初学者が間違って書いちゃった感。

 

Q&Aの通りに設定したら、たしかに通った。

 

普段仕事でエックスサーバーを利用して慣れているため、いつもの調子でふんふんと鼻歌を歌いながらコードを書いていたのでびっくり。

いやほんとびっくりした(しつこい)。

 

サーバー番号が「sv12301」以降のユーザーは、ホスト名を書くときに要注意です。

 

この業界にいる以上、常に最新情報はキャッチアップしていかなねばらないとあらためて思う。