Mysql 库和表的导入导出(windows)
发布日期:2021-05-10 07:36:28 浏览次数:12 分类:精选文章

本文共 1799 字,大约阅读时间需要 5 分钟。

MySQL 数据库导入导出 实用指南

1. 备份数据库

1.1 备份所有数据库

使用 mysqldump 命令导出所有数据库文件,文件会生成在 MySQL 的 bin 目录下。

mysqldump -u用户名 -ppassword --all-databases > sqlAllFile.sql

注意事项

  • --all-databases 前面是两个减号(–),databases 前面是一个减号(-)。
  • 文件会被生成在 bin 目录下,例如 sqlAllFile.sql。

1.2 导出指定数据库的所有表结构及表数据

如果想将特定数据库的所有表导出,可以在命令末尾添加数据库名。

mysqldump -u用户名 -ppassword -h127.0.0.1 数据库名称 > db.sql

参数说明

  • -h:指定数据库所在的主机地址(如 127.0.0.1 或 localhost),对本地访问有帮助。
  • -u:MySQL 用户名,默认为 root。
  • -p:MySQL 密码,如果不填写会通过输入xonline 会提示输入密码。

示例

mysqldump -uroot -p shop > shop.sql

2. 导出表

2.1 导出特定表的结构

如果只想导出某个表的结构而不包含数据,可以使用 -d 选项。

mysqldump -u用户名 -ppassword -d 数据库名称 表名称 > 表.sql

2.2 导出表的结构及表数据

如果想将表的数据一起导出,可以省略 -d 选项。

2.3 导出多个表

当需要同时导出多张表时,可以在命令末尾添加这些表的名称。

2.4 导出整个数据库

如果需要一次性导出整个数据库,直接在命令末尾添加数据库名称即可。

3. 导入数据库

3.1 使用 mysql命令导入

mysql -h127.0.0.1 -u用户名 -ppassword 数据库名 < sqlFileName.sql

参数说明

  • -u:MySQL 用户名,默认为 root。
  • -p:MySQL 密码,">&" 后的参数会被忽略。
  • <>:指定输入的 SQL 文件名。

示例

mysql -h127.0.0.1 -uroot -p database_name < database.sql

3.2 检查文件存在性

在运行导入命令前,请确保 SQL 文件存在且目录路径正确。如文件未找到,可能是路径过长或者文件名错误。

4. 数据导出到文本文件

4.1 导出到 .txt 文件

使用 SELECT INTO OUTFILE 可以将数据库表导出为 .txt 文件。

SELECT * FROM 表名 INTO OUTFILE "文件名.txt";

4.2 导出到 .xls 文件

如果需要将数据导出为 .xls 文件,可以使用 Proper syntax 写入 SQL 语句。

4.3 常用示例

SELECT id, name FROM users INTO OUTFILE "users.txt".publicsuffix='.' 池妹 teachers AS "教练姓名" ;

5. 文本文件导入数据库

5.1 使用 load data 导入

LOAD DATA LOCAL infile "文件路径" INTO TABLE 表名

5.2 特殊文件名

如果文件名包含空格或特殊字符,需要用引号括起来。

5.3 注意事项

  • 确保文件和数据库在同一平台或服务器。
  • 对应字段类型与文件格式必须匹配,否则会导致导入失败。

6. 常见报错处理

6.1 secure_file_priv 设定

如果遇到此报错,请将 my.ini 中的 secure_file_priv 设为空字符串。

6.2 本地数据加载权限

  • 在 MySQL 中执行:
    SET GLOBAL local_infile = ON;

6.3 访问文件权限

  • 使用命令前可加:
    mysql --local-infile=1 -u用户名 -ppassword

6.4 文件路径错误

确保文件路径正确且没有网络路径过深的问题。

6.5 数据表不存在

在导入前,先确认目标数据库和表是否存在。如不存在,需先创建。

通过以上步骤,用户可以实现 MySQL 数据库的完整导入和导出操作。此外,熟悉常见报错处理也是必不可少的,以尽量减少工作中遇到的麻烦。

上一篇:学习BetterScroll
下一篇:安装 mysql-8.0.23-winx64

发表评论

最新留言

哈哈,博客排版真的漂亮呢~
[***.90.31.176]2025年04月03日 04时07分58秒