首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫

MySQL 文件操作实战:数据导入导出、SQL 执行、结果重定向、备份恢复全攻略

     編輯:MySQL 資料庫相關知識

MySQL 文件级操作完全手册

从 CSV 导入到备份恢复,掌握文件操作是 DBA 与开发的必备技能。本文覆盖 LOAD DATA、SELECT INTO OUTFILE、SOURCE、重定向、tee、mysqldump 全场景。

一、CSV 文件导入导出

1. 导入 CSV

LOAD DATA INFILE 'D:/myCodes/test.csv'
INTO TABLE member
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\r\n'
IGNORE 1 LINES;  -- 跳过表头

注意文件编码需与表字符集一致(如 UTF-8)。

2. 导出 CSV

SELECT * INTO OUTFILE 'D:/myCodes/out.csv'
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\r\n'
FROM member;

要求 MySQL 拥有目标目录写权限,且 secure_file_priv 允许该路径。

二、执行外部 SQL 文件

1. 客户端内执行

SOURCE D:/myCodes/test.sql  -- 无需分号

2. 批处理/命令行执行

mysql test -uroot -p -e "SOURCE D:/myCodes/test.sql"

可封装为 .bat/.sh 实现自动化部署。

三、结果重定向与 tee 记录

1. Shell 重定向

mysql -uroot -p > D:/myCodes/log.txt
mysql -uroot -p -e "SOURCE D:/myCodes/test.sql" > D:/myCodes/log.txt

2. MySQL 客户端 tee 命令

tee D:/myCodes/teeLog.txt
USE home;
SELECT * FROM customer;
notee;
EXIT;

tee 同时输出到屏幕与文件,适合交互式审计。

四、数据库备份与恢复 (dump/restore)

1. 逻辑备份

mysqldump -u root -p home --default-character-set=utf8 > D:/myCodes/home_back.sql

2. 创建目标库并恢复

mysqladmin -u root -p CREATE home1
mysql -u root -p home1 --default-character-set=utf8 < D:/myCodes/home_back.sql

五、生产环境最佳实践

  • 大表导出加 --single-transaction --quick --hex-blob
  • 备份文件压缩:mysqldump ... | gzip > backup.sql.gz
  • 定期校验备份可恢复性
  • 敏感数据导出前脱敏
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved