1049: Unknown database 'name'(未知数据库 'name')
MySQL含义
您要连接或使用的数据库(schema)在服务器上不存在。USE 语句或连接字符串中的默认数据库名指向一个不存在的 schema。
原因
数据库从未创建、名称拼写错误(大小写敏感性可能因操作系统而异)、已被删除,或应用连接到了错误的环境(dev/prod)。迁移到新服务器时未迁移 schema 也是常见原因。
解决方法
列出现有数据库: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(从 master 读取二进制日志数据时收到致命错误 1236)
- 1129Host 'host' is blocked because of many connection errors(主机 'host' 因连接错误过多而被阻止)