TAGS
- AI
- Cursor
- Mysql
- Xserver
- Excel
- Windows 11
- Office 365
- ピボットテーブル
- Sequoia
- Apple Mail
- メール
- Tahoe
- NAS
- QNAP
- DDNS
- El Capitan
- Sierra
- High Sierra
- Mojave
- Catalina
- Monterey
- Ventura
- ディスク
- CSS
- Android
- BigSur
- Rosetta2
- アップデート
- iOS
- Filemaker
- Windows 8
- Windows 10
- デバイス
- プリンター
- エラー
- PHP
- OS X Lion
- インストール
- Webブラウザ
- ウィンドウ
- Windows XP
- OS
- RAM
- Outlook
- Outlook 2003
- Windows Vista
- InternetExplorer
- IE7
- IE8
- Windows Live Writer
- MovableType
- HDD
- Web制作
- Windows
- Windows 7
- macOS
- macOS 10.6
- Google Chrome
- Webサービス
RECORDS
-
Xserver 新規 MySQL5.7 を WordPress の 5.5 ホストに繋ぎ 1045 になった
現象
エックスサーバー API で新規 MySQL 5.7 データベース(例: tomippe_stdbv6)と専用ユーザーを作成したあと、
.envのSTDB_DB_HOSTに既存 WordPress(MySQL 5.5)のホスト名(mysql○a.xserver.jp形式)を流用して接続した。サーバー上で
SELECT 1を実行すると、正しいパスワード・空パスワード・誤ったパスワード・存在しないユーザー名のいずれでも、同じ 1045 Access denied が返り続けた。API のuser-update --passwordでパスワードを何度も再設定しても改善しなかった。原因・対処方法
原因: 接続先ホストが MySQL/MariaDB 5.5 世代のサーバーだった。5.7 用に API で作成したユーザーは 5.5 サーバー上に存在しないため、認証以前に「ユーザーが居ない」状態となり、パスワードの正否に関わらず 1045 になる。
エックスサーバー API で MySQL ホスト FQDN は取れない(確定):
server infoのhostnameは Web サーバー用(sv69 等)であり、MySQL ホストではないserver db listに出るのはversion_name(MySQL5.7)まで。ホスト FQDN フィールドは無いserver db getは存在しない- API 応答にホスト項目が無いのは見落としではない。パネル最下部の MySQL5.7 情報、またはプロジェクト正本(例: sTDBv6 は
mysql1b.xserver.jp)を使う
エージェント向け禁止事項:
- 1045 が続くとき、先にホスト名の MySQL 世代を疑う。パスワード再設定を繰り返さない
- 新規 MySQL 5.7 DB には
mysql○a.xserver.jp(5.5 系)を使わない - 既存 WordPress の DB ホストをそのまま流用しない(世代が異なることがある)
対処: サーバーパネル「MySQL設定 → MySQLの一覧」ページ最下部の「MySQL5.7情報」に記載のホスト名(
mysql○○.xserver.jp、末尾aなし)をSTDB_DB_HOSTに設定する。公式 FAQ によると、5.5(sv855 以前)はmysql○○a.xserver.jp、5.7 はmysql○○.xserver.jp形式です。切り分けの目安: 正パス・誤パス・架空ユーザーで同じ 1045 → パスワード問題ではなくホスト/ユーザー存在の問題を疑う。
参考記事