关闭

常用的mysql命令

107人阅读 评论(0) 收藏 举报

1. 备份整个数据库

mysqldump -uroot -p111111 -h127.0.0.1  --opt dbname > dbname.sql

2. 备份某个表

mysqldump -uroot -p111111 -h127.0.0.1 --opt dbname tablename > tablename.sql

mysqldump -u user -p pwd -h host dbname[tbname,[tbname...]]>filename.sql

–opt:此Mysqldump命令参数是可选的,如果带上这个选项代表激活了Mysqldump命令的quick,add-drop-table,add-locks,extended-insert,lock-tables参数,也就是通过–opt参数在使用Mysqldump导出Mysql数据库信息时不需要再附加上述这些参数。
 
  –quick:代表忽略缓冲输出,Mysqldump命令直接将数据导出到指定的SQL文件。
  –add-drop-table:顾名思义,就是在每个CREATE TABEL命令之前增加DROP-TABLE IF EXISTS语句,防止数据表重名。
 
  –add-locks:表示在INSERT数据之前和之后锁定和解锁具体的数据表,你可以打开Mysqldump导出的SQL文件,在INSERT之前会出现LOCK TABLES和UNLOCK TABLES语句。
  –extended-insert (-e):此参数表示可以多行插入。

使用 SELECT ... INTO OUTFILE 语句导出数据

以下实例中我们将数据表 tutorials_tbl 数据导出到 /tmp/tutorials.txt 文件中:

mysql> SELECT * FROM tutorials_tbl 
    -> INTO OUTFILE '/tmp/tutorials.txt';

你可以通过命令选项来设置数据输出的指定格式,以下实例为导出 CSV 格式:

mysql> SELECT * FROM passwd INTO OUTFILE '/tmp/tutorials.txt'
    -> FIELDS TERMINATED BY ',' ENCLOSED BY '"'
    -> LINES TERMINATED BY '\r\n';

在下面的例子中,生成一个文件,各值用逗号隔开。这种格式可以被许多程序使用。

SELECT a,b,a+b INTO OUTFILE '/tmp/result.text'
FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"'
LINES TERMINATED BY '\n'
FROM test_table;

从文件中倒数据到数据库表:load data infile

参考链接:http://www.runoob.com/mysql/mysql-database-import.html

如何手动修改LONGBLOB字段?
       对于utf8的数据库, 存储汉字到blob字段, 如汉字的utf8编码是E6 97 B6 E9 97 B4
       可以直接把blob字段改成text, 然后直接插入16进制数字,如:insert into longblob (text)values(X'E697B6E997B4')
       然后把text重新改回longblob字段。
存储LONGBLOB太大的字段,注意在[mysqld]下,添加max_allowed_packet=16M



0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:1349次
    • 积分:72
    • 等级:
    • 排名:千里之外
    • 原创:5篇
    • 转载:3篇
    • 译文:0篇
    • 评论:0条