1049: Unknown database 'name'(不明なデータベース 'name')
MySQL意味
接続または使用しようとしているデータベース (スキーマ) がサーバー上に存在しない。USE 文または接続文字列のデフォルトデータベース名が存在しないスキーマを指している。
原因
データベースが作成されていない、名前の綴りが誤っている (大文字小文字の区別は OS によって異なる)、削除された、またはアプリケーションが誤った環境 (dev/prod) に接続している。新しいサーバーへの移行時にスキーマが移行されていないこともよくある原因。
対処方法
既存のデータベースを一覧表示する: SHOW DATABASES; 名前の綴りが正しく、大文字小文字が一致していることを確認する (lower_case_table_names の設定が影響する)。存在しない場合は作成する: CREATE DATABASE database_name CHARACTER SET utf8mb4; またはバックアップからリストアする。アプリケーションの接続設定で対象環境を確認する。
同じデータベースの他の項目
- 1592ER_BINLOG_UNSAFE_STATEMENT: Unsafe statement written to the binary log(安全でない文がバイナリログに書き込まれた)
- 3140ER_INVALID_JSON_TEXT: Invalid JSON text(無効な JSON テキスト)
- 1526ER_NO_PARTITION_FOR_GIVEN_VALUE: Table has no partition for value(値に対応するパーティションがない)
- 1364Field 'name' doesn't have a default value(フィールド 'name' にデフォルト値がない)
- 1206The total number of locks exceeds the lock table size(ロックの総数がロックテーブルのサイズを超えた)
- 1236Got fatal error 1236 from master when reading data from binary log(バイナリログの読み取り中にマスターから致命的エラー 1236)
- 1129Host 'host' is blocked because of many connection errors(接続エラーが多いためホスト 'host' がブロックされた)