1

我已经使用 HeidiSQL 7 导出了数据库的完整备份。

现在,当通过 PHPMyAdmin 导入它时,我注意到我必须选择数据库information_schema,因为这就是数据库的导出方式(或者这就是 HeidiSQL 7 将数据库作为对象导出到 SQL 文件的方式?)。

但是,这是一个问题,因为当我使用 HeidiSQL 7(而不是 PHPMyAdmin)导入(导出的文件)时,在选择information_schema数据库并单击导入 SQL 文件(从工具菜单中)时,它说访问被拒绝根用户。

在 PHPMyAdmin 中,选择数据库时导入选项不可用information_schema

如何导入完整的数据库转储?(这就是我导出它的方式:HeidiSQL > 导出数据库对象导出到 SQL 文件)

编辑:我用命令行尝试过,但没有运气:

C:\Programs\XAMPP\mysql\bin>mysql --verbose --user=root Information_schema < DT.
sql
--------------
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */
--------------

--------------
/*!40101 SET NAMES utf8 */
--------------

--------------
/*!40014 SET FOREIGN_KEY_CHECKS=0 */
--------------

--------------
/*!40000 ALTER TABLE `CHARACTER_SETS` DISABLE KEYS */
--------------

ERROR 1044 (42000) at line 13: Access denied for user 'root'@'localhost' to data
base 'information_schema'

C:\Programs\XAMPP\mysql\bin>

这是 SQL 文件的片段: //pastebin.com/6hwhK2CJ

注意:我的 root 用户的密码是空白的。

也许我的问题的另一种解决方案:如何从 SQL 文件中只导入我想要的数据库?例如名称为“Employees”的数据库?因为那个 SQL 文件应该包含一些数据库。

Edit2:(对第一条评论的回答)我下载了 MySQL Workbench,设置了连接......

03:23:08 Restoring C:\Files\DB.sql

Running: mysql.exe --defaults-extra-file="c:\files\temp\tmplnjwd6.cnf"  --host=localhost --user=root --port=3306 --default-character-set=utf8 --comments < "C:\\Files\\DB.sql"

ERROR 1046 (3D000) at line 13: No database selected


Operation failed with exitcode 1

03:23:08 Import of C:\Files\DB.sql has finished with 1 errors
4

1 回答 1

1

INFORMATION_SCHEMA是一个伪只读数据库(实际上,它是一个“ ANSI 标准的只读视图集”)。

您需要删除与此伪数据库相关的所有转储数据,因为绝对无法导入它。

Notepad++能够轻松处理 9 MB 文件,并且还提供了很好的语法高亮显示。

于 2012-06-21T21:58:29.147 回答