mysqldump常见用法详解
本文发布于 12 年前, 内容可能已经过时或失效!
MySQL的mysqldump命令 基本用法是: ``` mysqldump [OPTIONS] database [tables] ``` ## 说明: 1. 通过执行mysqldump --help,你能得到你mysqldump的版本支持的使用帮助信息。 2. 如果端口为默认的3306时,可省略 -P {端口号} 这一项。 3. 命令行格式中 { } 中的内容都是变量 主机名 : {hostname} 端 口:{port} (一般默认3306,可缺省) 用户名:{user} {username} (如root) 密 码:{password} 数据库名 :{database} 表 名:{table} {table1} {table2} 文件名:{backup.sql} ## 常用操作: 备份MySQL整个数据库: ``` mysqldump -h主机名 -P端口 -u用户名 -p密码 (–database) 数据库名 > 文件名.sql mysqldump -h{hostname} -P{port} -u{username} -p{password} {database} > {backup.sql} ``` **说明:** 参数及值可以分开如-P3306可以写成-P 3306,密码可以先不填写,以确保安全。 **MySQL数据库压缩备份:** ``` mysqldump -h{hostname} -u{username} -p{password} {database} | gzip > {backup.sql.gz} ``` 备份MySQL数据库某个(些)表: ``` mysqldump -h主机名 -P端口 -u用户名 -p密码 (–tables | –quick) 数据库名 表名1 (表名2 …) > 文件名.sql (括号中的可缺省)。 ``` #实例: ``` mysqldump -u root -p myadmindb admin_group admin_group_right admin_logs admin_user_right admin_users > tmp.sql ``` **同时备份多个MySQL数据库:** ``` mysqldump -h{hostname} -P{port} -u{username} -p{password} –databases {database1} {database2} {database3} > multibackfile.sql ``` 还原MySQL数据库的命令: ``` mysql -h{hostname} -u{username} -p{password} {database} < {backup.sql} ``` 还原压缩的MySQL数据库: ``` gunzip < {backup.sql.gz} | mysql –u{username} –p{password} {database} ``` 将数据库转移到新服务器: ``` mysqldump –u{username} –p{password} {database} | mysql –host={hostname} –C {database} ```