概述

PolarDB-X兼容MySQL的导入导出语法,本文总体介绍了PolarDB-X支持的几种数据导入导出方式。

导入方式

SOURCE语句

source命令导入数据库需要先登录到数据库终端:

create database abc;      # 创建数据库
use abc;                  # 使用已创建的数据库 
set names utf8;           # 设置编码
source /home/abc/abc.sql  # 导入备份数据库

MySQL命令

使用MySQL命令导入语法格式:

mysql -u用户名    -p密码    <  要导入的数据库数据(runoob.sql)

LOAD DATA语句

具体使用方法请参见使用LOAD DATA语句导入数据

使用程序导入数据

具体使用方法请参见使用程序导入数据

Batch Tool工具导入

具体使用方法请参见使用Batch Tool工具导入导出数据

导出方式

mysql -e命令

mysql -e命令可以连接本地或远程服务器,通过执行SQL语句,例如select方式获取数据,原始输出数据以制表符方式分隔,可通过字符串处理改成','分隔,以csv文件方式存储,方法示例:

mysql -h ip  -P port -u usr -pPassword db_name -N -e "SELECT id,k,c,pad FROM sbtest1;" >/home/data_1000w.txt
## 原始数据以制表符分隔,数据格式:188092293    27267211    59775766593-64673028018-...-09474402685    01705051424-...-54211554755

mysql -h ip  -P port -u usr -pPassword db_name -N -e "SELECT id,k,c,pad FROM sbtest1;" | sed 's/\t/,/g' >/home/data_1000w.csv
## csv文件以逗号分隔,数据格式:188092293,27267211,59775766593-64673028018-...-09474402685,01705051424-...-54211554755

SELECT ... INTO OUTFILE语句(默认关闭)

语法

SELECT ... INTO OUTFILE 'file_name'
        [CHARACTER SET charset_name]
        [export_options]
 
export_options:
    [{FIELDS | COLUMNS}
        [TERMINATED BY 'string']
        [[OPTIONALLY] ENCLOSED BY 'char']
        [ESCAPED BY 'char']
    ]
    [LINES
        [STARTING BY 'string']
        [TERMINATED BY 'string']

示例

SELECT customer_id, firstname, surname INTO OUTFILE '/exportdata/customers.txt'
  FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"'
  LINES TERMINATED BY '\n'
  FROM customers;

说明

目前OUTFILE和MySQL语法一致,导出的文件会保存在执行该SQL会话对应的PolarDB-X计算节点。

mysqldump工具

具体使用方法请参见mysqldump导出工具

Batch Tool工具

具体使用方法请参见使用Batch Tool工具导入导出数据

如何选择导入导出工具

请参见如何优化数据导入导出