问题描述
我正在尝试使用以下命令将现有数据库文件导入到空SQL数据库中:
mysql -u username -p'password' db_name < dbfile.sql
但出现以下错误:
第1行的错误1146(42S02):表'db_name.oc_address'不存在
我知道oc_address是SQL文件中的一个表名,但是我不知道如何正确导入它,我在网上搜索并且堆栈溢出,都没有发现此错误。
解决方法
要导出整个数据库,然后将其加载到另一台服务器,最好的选择是使用mysqldump command line utility。它的导出文件包含数据库以及数据的数据定义语言(表,视图等)。
您也可以将其导出为仅定义。
PRODUCT
然后您可以先导入该文件,然后再导入数据文件。
或者,您也许可以站立一个新的,空的Opencart实例并使用其UI导入数据。
如果您可以使用像mysqldump这样的工具来执行此操作,那么避免自己编写替换DDL可能是明智的选择。
,- 下载实际的opencart zip文件
https://www.opencart.com/index.php?route=cms/download/download&download_id=62
-
解压缩
-
打开文件夹
\ upload \ install
和
- 运行opencart.sql
如果安装的扩展程序需要自己的sql,则也必须运行其sql
- 运行后,您将备份文件