mysqldump与source

mysqldump与source

mysqldump示例 

mysqldump --default-character-set=utf8 -d --opt -hlocalhost -uroot -p123456 --where="id = 5" vimer_beta table1 table2 > /root/_backup_vimer.sql 

--default-character-set=utf8:指定导出字符集 

-d:只导出表结构,不到出表数据 

--opt:这只是一个快捷选项,等同于同时添加 --add-drop-tables --add-locking --create-option --disable-keys --extended-insert --lock-tables --quick --set-charset 选项。本选项能让 mysqldump 很快的导出数据,并且导出的数据能很快导回。该选项默认开启,但可以用 --skip-opt 禁用。注意,如果运行 mysqldump 没有指定 --quick 或 --opt 选项,则会将整个结果集放在内存中。如果导出大数据库的话可能会出现问题。 

--single-transaction: 不用锁表

-h:指定数据库所在主机地址 

-u:指定用户名 

-p:指定密码 

table1 table2: 需要导出的表, 如果不写, 则导出所有表


vimer_beta:数据库名 

最后为导出文件的地址 

-t:只导出表数据 

如果是只导出数据不导出结构,去掉-d,加上-t即可 


source 

进入mysql数据库控制台, 
如mysql -u root -p 

mysql>use 数据库 

然后使用source命令,后面参数为脚本文件(如这里用到的.sql) 
mysql>source d:wcnc_db.sql 

除了 source 还可以使用 load data infile 导入数据

LOAD DATA LOCAL INFILE '/test/datedata.new' INTO TABLE date_stat character set utf8 FIELDS TERMINATED BY ' ' (dat, stat, holiday_name);

此处使用空格分隔的数据列