mysql export csv file

本文介绍了一种使用MySQL命令将数据库表数据导出为CSV文件的方法。具体命令为:SELECT * INTO OUTFILE '/tmp/products.csv' FIELDS TERMINATED BY ',' ENCLOSED BY '' ESCAPED BY '\' LINES TERMINATED BY ' ' FROM products;该命令说明了字段如何被逗号分隔,如何用双引号括起来以及如何转义特殊字符等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

SELECT *
INTO OUTFILE '/tmp/products.csv'
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
ESCAPED BY '\\'
LINES TERMINATED BY '\n'
FROM products


文件存放在DATA目录里


[b]FYI[/b]
[url]http://www.electrictoolbox.com/mysql-export-data-csv/[/url]
### 设置定时任务自动将 MySQL 数据库表导出为 CSV 文件 为了实现定期将 MySQL 数据库中的表导出为 CSV 文件的功能,可以采用 Linux 的 `cron` 定时任务配合 MySQL 命令行工具完成此操作。具体方法如下: #### 使用 SELECT...INTO OUTFILE 导出数据 在 MySQL 中可以直接通过 SQL 语句将查询结果保存至指定路径下的文件中。例如要从名为 `example_table` 的表格中选取全部记录并存入 `/path/to/output.csv` 文件内,则可执行以下指令[^2]: ```sql SELECT * FROM example_table INTO OUTFILE '/path/to/output.csv' FIELDS TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY '\n'; ``` #### 创建 Shell 脚本封装导出逻辑 考虑到实际应用环境可能涉及更复杂的参数配置以及错误处理机制等因素,在编写 shell script 来调用上述命令会更加灵活方便。下面给出一段简单的脚本模板作为参考: ```bash #!/bin/bash # Define variables here. MYSQL_USER="your_username" MYSQL_PASSWORD="your_password" DATABASE_NAME="target_db_name" TABLE_NAME="source_table_name" OUTPUT_FILE="/desired/path/filename_%Y%m%d%H%M%S.csv" # Execute export command with date format in filename to avoid overwriting previous exports. mysqldump --tab=/tmp -u ${MYSQL_USER} -p${MYSQL_PASSWORD} \ --fields-terminated-by=',' \ --fields-optionally-enclosed-by='"' \ --lines-terminated-by='\n' \ ${DATABASE_NAME} ${TABLE_NAME} mv /tmp/${TABLE_NAME}.txt $(date +"$OUTPUT_FILE") ``` 注意:以上代码片段仅作示意用途,请根据实际情况调整变量定义部分的内容。 #### 配置 Cron 表达式触发周期性运行 最后一步就是安排好这个自定义的任务计划了。可以通过编辑用户的 crontab 文件来设定具体的调度策略。假设希望每天凌晨两点钟准时启动一次该作业的话,那么对应的 cron expression 应当写作 `"0 2 * * *"`. 将其加入到个人用户的 crontab 列表里即可生效。 ```bash crontab -e ``` 接着输入刚才准备好的表达式加上完整的shell脚本路径形成一行新的条目,比如这样: ```text 0 2 * * * /full/path/to/export_script.sh >> /log/directory/cronjob.log 2>&1 ``` 这将会使得系统每晚固定时间点自动执行一遍预先编写的导出程序,并且把日志输出重定向到了特定位置以便后续查看分析。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值