MYSQL入门学习之二十:MYSQLIMPORT命令参数详解

        MySQLimport位于MySQL/bin目录中,是MySQL的一个载入(或者说导入)数据的一个非常有效的命令行工具。
        使用mysqlimport -?命令,可以查看mysqlimport的具体参数及详细说明。下表是一些常见的选项:
-c, --columns=name Use only these columns to import the data to. Give the column names in a comma separated list. This is same as giving columns to LOAD DATA INFILE. 该选项采用用逗号分隔的列名作为其值。列名的顺序指示如何匹配数据文件列和表列。
-C, --compress Use compression in server/client protocol. 压缩在客户端和服务器之间发送的所有信息(如果二者均支持压缩)
-d, --delete First delete all rows from table. 新数据导入数据表中之前删除数据数据表中的所有信息
--fields-terminated-by=name Fields in the textfile are terminated by … 指定数据之间的分隔符。默认的分隔符是跳格符(Tab)
--fields-enclosed-by=name Fields in the importfile are enclosed by ... 指定文本文件中数据的记录是以什么括起的, 很多情况下数据以双引号括起。 默认的情况下数据是没有被字符括起的
--fields-optionally-enclosed-by=name Fields in the i.file are opt. enclosed by … 字段包括符,只用在CHAR和VERCHAR字段上
--fields-escaped-by=name Fields in the i.file are escaped by ... 转义字符
-f, --force Continue even if we get an sql-error. 不管是否遇到错误,MySQLimport将强制继续插入数据
-?, --help Displays this help and exits. 显示帮助消息并退出
-h, --host=name Connect to host. 将数据导入给定主机上的MySQL服务器。默认主机是localhost
-i, --ignore If duplicate unique key was found, keep old row. 跳过或者忽略那些有相同唯一关键字的行, 导入文件中的数据将被忽略
--ignore-lines=# Ignore first n lines of data infile. 忽视数据文件的前n行
--lines-terminated-by=name Lines in the i.file are terminated by ... 行记录分隔符。 默认的情况下MySQLimport以newline为行分隔符
-L, --local Read all files through the client. 从本地客户端读入输入文件
-l, --lock-tables Lock all tables for write (this disables threads). 数据被插入之前锁住表,防止在更新数据库时,用户的查询和更新受到影响
--low-priority Use LOW_PRIORITY when updating the table. 低优先级
-p, --password[=name] Password to use when connecting to server. If password is not given it's asked from the tty. 提示输入密码
-W, --pipe Use named pipes to connect to server. 使用命名管道连接服务器
-P, --port=# Port number to use for connection or 0 for default to, in order of preference, my.cnf, $MYSQL_TCP_PORT, /etc/services, built-in default (3306). 用于连接的TCP/IP端口号
--protocol=name The protocol of connection (tcp,socket,pipe,memory). 连接使用的协议
-r, --replace If duplicate unique key was found, replace old row. 与-i选项的作用相反;此选项将替代表中有相同唯一关键字的记录
--shared-memory-base-name=name Base name of shared memory. 共享内存连接名。该选项只用于Windows
-s, --silent Be more silent. 沉默模式。只有出现错误时才输出
-S, --socket=name Socket file to use for connection. 当连接localhost时使用的套接字文件(为默认主机)
--use-threads=# Load files in parallel. The argument is the number of threads to use for loading data. 并行多线程导入个数
-u, --user=name User for login if not current user. 连接服务器时MySQL使用的用户名
-v, --verbose Print info about the various stages. 冗长模式。打印出程序操作的详细信息
-V, --version Output version information and exit. 显示版本(version)
       
        示例:
        C:\Users\qxl>mysql -e "create table test.test_import(user_id int,user_name varchar(20))"
        ERROR 1045 (28000): Access denied for user 'ODBC'@'localhost' (using password: NO)
        
        C:\Users\qxl>mysql -uroot -e "create table test.test_import(user_id int,user_name varchar(20))"
        
        C:\Users\qxl>type h:\test_import.sql
        '1','Roses'
        C:\Users\qxl>mysqlimport -uroot --fields-terminated-by=, --fields-enclosed-by=' test h:\test_import.sql
        test.test_import: Records: 1  Deleted: 0  Skipped: 0  Warnings: 0
        
        C:\Users\qxl>mysql -uroot -e "select * from test.test_import"
        +---------+-----------+
        | user_id | user_name |
        +---------+-----------+
        |       1 | Roses     |
        +---------+-----------+

你可能感兴趣的:(Mysql)