无法将现有 sql 文件导入空数据库:db_name.table_name 不存在
can't import existing sql file to an empty database: db_name.table_name doesn't exist
我正在尝试使用以下命令将现有数据库文件导入空 SQL 数据库:
mysql -u username -p'password' db_name < dbfile.sql
但我得到以下错误:
第 1 行的错误 1146 (42S02):Table 'db_name.oc_address' 不存在
我知道 oc_address 是 SQL 文件中的一个 table 名称,但我不知道如何正确导入它,我在网上搜索了堆栈溢出,未发现此错误。
要导出整个数据库然后将其加载到另一台服务器,最好的办法是使用 mysqldump command line utility。它的导出文件包含数据库和数据的数据定义语言(表、视图等)。
您也可以让它只导出定义。
mysqldump --no-data -u username -p'password' db_name > opencartddl.sql
然后您可以先导入该文件,然后再导入您的数据文件。
或者,您可以建立一个新的空 Opencart 实例并使用其 UI 导入您的数据。
如果您可以使用像 mysqldump 这样的工具来编写替代 DDL,那么避免尝试自己编写替换 DDL 可能是明智的。
- 下载实际的 opencart zip 文件
https://www.opencart.com/index.php?route=cms/download/download&download_id=62
解压
打开文件夹
\upload\install
和
- 运行 opencart.sql
如果您安装了需要自己 sql 的扩展,您还必须 运行 sql
- 之后运行你备份文件
我正在尝试使用以下命令将现有数据库文件导入空 SQL 数据库:
mysql -u username -p'password' db_name < dbfile.sql
但我得到以下错误:
第 1 行的错误 1146 (42S02):Table 'db_name.oc_address' 不存在
我知道 oc_address 是 SQL 文件中的一个 table 名称,但我不知道如何正确导入它,我在网上搜索了堆栈溢出,未发现此错误。
要导出整个数据库然后将其加载到另一台服务器,最好的办法是使用 mysqldump command line utility。它的导出文件包含数据库和数据的数据定义语言(表、视图等)。
您也可以让它只导出定义。
mysqldump --no-data -u username -p'password' db_name > opencartddl.sql
然后您可以先导入该文件,然后再导入您的数据文件。
或者,您可以建立一个新的空 Opencart 实例并使用其 UI 导入您的数据。
如果您可以使用像 mysqldump 这样的工具来编写替代 DDL,那么避免尝试自己编写替换 DDL 可能是明智的。
- 下载实际的 opencart zip 文件
https://www.opencart.com/index.php?route=cms/download/download&download_id=62
解压
打开文件夹
\upload\install
和
- 运行 opencart.sql
如果您安装了需要自己 sql 的扩展,您还必须 运行 sql
- 之后运行你备份文件