导入导出对于mysql来讲就是数据备份了,下面我来介绍在超大数据量时如何利用mysql命令对数据库进行备份与还原操作,希望些方法对各位有所帮助。
面对大数据量,大文件的sql操作,我们需要借助mysql强大的命令操作.
1. 数据库导入命令,代码如下:
- mysql -h localhost -u root -p
- use dbname
- source backup.sql
说明:需要使用命令连接上数据库并选择相应数据库才能使用。
2. 数据库备份命令
MySQL的导出命令mysqldump,基本用法是,代码如下:
mysqldump [OPTIONS] database [tables]
说明:不能先连接数据库,是直接连接数据库导出
简单实例,代码如下:
mysqldump -h localhost -u root -p dbname > backup.sql
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}
|