我使用HeidiSQL 7导出了数据库的完整备份。
现在通过PHPMyAdmin导入它时,我注意到我必须选择数据库information_schema
,因为这是数据库的导出方式(或者这就是HeidiSQL 7将数据库作为对象导出到SQL文件的方式?)。 / p>
然而,这是一个问题,因为当我使用HeidiSQL 7(而不是PHPMyAdmin)导入(导出的文件)时,在选择information_schema
数据库,然后单击Import SQL file(从工具菜单中)时,它表示root用户拒绝访问。
在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文件的片段: http://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
答案 0 :(得分:1)
INFORMATION_SCHEMA
是一个伪的只读数据库(事实上,它是一个&#34; ANSI standard set of read-only views&#34;)。
您需要删除与此伪数据库相关的所有转储数据,因为绝对无法导入它。
Notepad++能够轻松处理9 MB文件,并且还提供了很好的语法高亮显示。