linux 下MySQL命令行导出csv文件格式

从数据库服务器导出

1、登录mysql

mysql -uroot -p 

2、切换数据库

use database

3、导出文件命令

SELECT id, column1, column2 FROM table
INTO OUTFILE '/tmp/mysqlfiles/table.csv'
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY 'n'

将 数据输出到 /tmp/mysqlfiles/table.csv,或者我们将其配置到的任何目录。 我们需要确保运行 MySQL 的用户(通常是 root)拥有该目录的所有权和写入权限。

我们还需要确保 secure_file_priv 设置允许 MySQL 访问该目录。 默认情况下,这会阻止 SQL 查询的读写访问。  如果我们的代码容易受到 SQL 注入的攻击,任何潜在的攻击者都只能访问 MySQL,而不能访问文件系统的其余部分。

如果没有配置改参数会报错,如下:linux 下MySQL命令行导出csv文件格式_第1张图片

 我们可以通过编辑 MySQL 配置文件(通常位于 /etc/my.cnf)来将特定目录列入白名单,包括

[mysqld]

secure-file-priv = "/tmp/mysqlfiles"

这将允许 MySQL 读取和写入 /tmp/mysqlfiles/ (我们必须使用 mkdir 创建)。 一旦 MySQL 可以导出文件,我们就应该能够运行查询并输出 CSV 文件。

 导出文件如下图:linux 下MySQL命令行导出csv文件格式_第2张图片

你可能感兴趣的:(mysql,数据库,sql)