温馨提示×

Debian下MySQL如何导入数据

小樊
55
2026-08-14 23:28:57
栏目: 云计算

在 Debian 下向 MySQL 导入数据,常见方式有以下几种,按使用频率从高到低介绍。


一、使用 mysql 命令导入 SQL 文件(最常用)

1️⃣ 准备 SQL 文件

例如:/home/user/db.sql

2️⃣ 登录并导入

mysql -u 用户名 -p 数据库名 < /home/user/db.sql

示例:

mysql -u root -p mydb < /home/user/db.sql

回车后会提示输入 MySQL 密码。


二、在 MySQL 交互终端中导入

mysql -u root -p

进入后执行:

USE mydb;
SOURCE /home/user/db.sql;

✅ 适合需要边导入边查看的情况。


三、导入 CSV 文件(LOAD DATA)

示例 CSV

1,张三,20
2,李四,22

SQL 导入命令

LOAD DATA INFILE '/tmp/test.csv'
INTO TABLE user
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\n'
IGNORE 1 ROWS;

⚠️ 注意事项:

  • MySQL 用户需有 FILE 权限
  • 文件路径必须是 MySQL 可访问的
  • 若报错,可尝试:
LOAD DATA LOCAL INFILE '/tmp/test.csv'
INTO TABLE user
...

四、使用 mysqlimport(CSV 专用)

mysqlimport -u root -p --local mydb /tmp/test.csv

要求:

  • CSV 文件名必须与表名一致(如 user.csv → user 表)

五、从 mysqldump 导出的文件恢复

mysql -u root -p mydb < backup.sql

或全库恢复:

mysql -u root -p < all_databases.sql

六、常见问题排查

❌ 报错:Access denied

ERROR 1045 (28000)

✅ 检查用户名、密码、权限


❌ 报错:Unknown database

ERROR 1049 (42000)

✅ 先创建数据库:

CREATE DATABASE mydb;

❌ 报错:Can't open file

✅ 检查:

  • 文件是否存在
  • 文件权限
  • 是否使用 LOCAL INFILE

启用本地导入:

SET GLOBAL local_infile = 1;

七、推荐流程(标准做法)

# 1. 登录 MySQL
mysql -u root -p

# 2. 创建数据库
CREATE DATABASE mydb CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

# 3. 退出并导入
exit
mysql -u root -p mydb < db.sql

如果你愿意,可以告诉我:

  • MySQL 版本(mysql --version)
  • 导入的是 SQL / CSV / 其他格式
  • 是否远程服务器

我可以给你更精确的命令 ✅

0 踩