2026年7月9日
2026年7月9日
WordPressの「WordPress データベースエラー: Command denied」
はじめに
WordPressの管理者として、サイトが正常に動作しないと悩むことはしばしばあります。その中でも「データベースエラー: Command denied」というメッセージは特に注意が必要です。これはMySQLユーザーが特定の操作を実行する権限がない場合に発生します。
症状・背景
このテーマが必要になる主な場面:
- テーブルの作成や削除ができない
- レコードの追加、更新、削除が失敗する
- WordPressのプラグインを有効化または無効化しようとするとエラーが出る
- データベースのバックアップを作成しようとしたときにエラーメッセージが出る
手順・設定方法
ステップ1: MySQLユーザー権限を確認する
# WordPressデータベースに接続します。
mysql -u [user_name] -p [database_name]
# MySQLの現在のユーザーアカウントの権限を確認します。
SHOW GRANTS FOR CURRENT_USER;
ステップ2: 欠落している権限を追加する
# MySQLに管理者として接続します。
mysql -u root -p
# 管理者用パスワードを入力してログインします。
# WordPressデータベースのユーザー名とデータベース名を適切に変更してください。
GRANT ALL PRIVILEGES ON [database_name].* TO '[user_name]'@'localhost';
# 権限の変更を即時に反映させます。
FLUSH PRIVILEGES;
ステップ3: WordPressデータベース接続設定を確認する
# FTPクライアントまたはSSHを使用して、WordPressインストールディレクトリにアクセスします。
# wp-config.phpファイルを開きます。
# データベース名、ユーザー名、パスワードを確認し、必要であれば修正します。
define('DB_NAME', 'your_database_name');
define('DB_USER', 'your_username');
define('DB_PASSWORD', 'your_password');
# 変更内容を保存してファイルを閉じます。
ステップ4: WordPressのデータベース接続エラーを監視する
# サイトが正常に動作していることを確認します。アクセスできない場合、サーバーログやWordPressログでエラーメッセージを探します。
# MySQLサーバーのエラーログを確認します。
tail -f /var/log/mysql/error.log
注意事項
- サービスが停止している場合は、データベースサーバーを再起動するか、システム管理者に連絡してください。
- データベース権限の変更は慎重に行い、他のユーザーのアクセスを無効化しないように注意してください。
- MySQLのセキュリティ設定を適切に管理し、データベースへの不正アクセスを防ぐためにパスワードの強度を確認します。
- パフォーマンス上の問題が懸念される場合は、必要最小限の権限だけをユーザーに付与してください。
まとめ
1. MySQLユーザー権限: WordPressデータベースへの接続時に適切な権限を持っていることを確認してください。
2. wp-config.php設定: データベース接続情報が正しいことを常にチェックして修正が必要なら更新します。
3. エラーログの確認: サイトの動作状況を監視し、問題があればサーバーログやWordPressログから原因を探ります。
4. セキュリティ設定: MySQLデータベースに対して適切なセキュリティポリシーが適用されていることを確認します。
5. 権限最小主義: 必要最低限のアクセス権限だけをユーザーに付与することで、システム全体の安全性を高めます。
関連記事: