mysql下生成备份表的命令的语句

在MySQL中字符串的连接需要使用concat函数,而其它数据库管理系统比如sqlserver&sybase使用+,oracle使用||。Sybase ASE15中也可以用||来连接字符串。
concat函数语法:  concat(str1,str2,....strN)

1.使用mysqldump备份表的简单语法为:

mysqldump -u用户名 -p密码 --default-character-set=字符集 数据库名 表名> 表的备份文件名

例: mysqldump -uroot -pmypasswd --default-character-set=latin1 andkylee MYTABLE > d:\MYTABLE.SQL

注意:数据库名和表名之间用空格分割。

2.使用mysqldump备份数据库的简单语法为:

mysqldump -u用户名 -p密码 --default-character-set=字符集 --databases 选项 数据库名 >  数据库的备份文件名

例: mysqldump -uroot -pmypasswd --default-character-set=latin1  --databases andkylee > d:\db_andkylee.SQL

如果想在脚本前面加上drop database命令,使用选项:--add-drop-database,

         mysqldump -uroot -pmypasswd --default-character-set=latin1  --databases --add-drop-database andkylee > d:\db_andkylee.SQL

在备份数据库的时候,不备份其中某个表,使用选项:--ignore-table=<database>.<table>

例: mysqldump -uroot -pmypasswd --default-character-set=latin1  --databases --add-drop-database --ignore-table=andkylee.pma_bookmark --ignore-table=andkylee.pma_column_info andkylee > d:\db_andkylee.SQL

3.批量生成与上面类似的备份某个数据库内所有表的语句可以使用SQL:

select concat('mysqldump -uroot -pmypasswd --default-character-set=latin1 wwwdbai_myblog ',table_name,' > d:\\wwwdbai_myblog\\',table_name,'.sql') from information_schema.TABLES where table_schema='wwwdbai_myblog';

注意:MySQL字符串中的特殊字符,比如本例子中的反斜杠\需要进行转义,转义字符为:\


4. 查看mysqldump帮助使用选项:--help ,

              mysqldump --help

几个比较实用的选项为:

-c, --complete-insert                                    Use complete insert statements.

--default-character-set=name                        Set the default character set.

--fields-terminated-by=name                          Fields in the textfile are terminated by ...

--ignore-table=name

-n, --no-create-db

-t, --no-create-info

-d, --no-data                                               No row information.

--tables                                                      Overrides option --databases (-B).

-w, --where=name                                        Dump only selected records; QUOTES mandatory!

你可能感兴趣的:(mysql下生成备份表的命令的语句)