码迷,mamicode.com
首页 > 数据库 > 详细

mysql,sqlsever,oracle,redis,mongo,postgres等数据库备份及恢复指令整理

时间:2015-07-11 12:14:30      阅读:170      评论:0      收藏:0      [点我收藏+]

标签:mysql   sqlserver   oracle   备份   恢复   

下列仅整理给出各个数据库备份及恢复最简单的用法,更多详细的参数及配置请查阅相关资料

一、mysql:

参数说明:

$user $password $targethost $port $charset $dbname $table $filename
用户名 密码 ip(本地为localhost) 端口 编码 数据库名 表名(仅表级备份需要) 文件名

备份:mysqldump --single-transaction -l -u $user -p‘$password‘ -h $targethost -P $port --default-character-set=$charset $dbname $table > $filename

恢复:mysql $dbname -u $user -p‘$password‘ -h $targethost -P $port --default-character-set=$charset  < $filename


二、sqlserver:

说明:sqlserver2003及以下仅支持osql,sqlserver2005及以上同时支持osql及sqlcmd,以下方法对sqlcmd及osql均通用。

参数说明:

$user $passwrod $instance $dbname $filename $diff_filename
用户名 密码 实例名 数据库名 全量备份文件名 增量备份文件名

全量备份:osql -U $user -P "$password" -d master -S $instance -Q "ALTER DATABASE $dbname SET OFFLINE WITH ROLLBACK IMMEDIATE; RESTORE DATABASE $dbname FROM DISK=‘$filename‘ WITH REPLACE; ALTER DATABASE $dbname SET ONLINE"

增量备份:osql -U $user -P "$password" -d master -S $instance -Q "ALTER DATABASE $dbname SET OFFLINE WITH ROLLBACK IMMEDIATE; RESTORE DATABASE $dbname FROM DISK=‘$filename‘ WITH REPLACE,NORECOVERY; RESTORE DATABASE $dbname FROM DISK=‘$diff_filename‘ WITH RECOVERY; ALTER DATABASE $dbname SET ONLINE"

全量恢复:osql -U $user -P "$password" -d master -S $instance -Q "ALTER DATABASE $dbname SET OFFLINE WITH ROLLBACK IMMEDIATE; RESTORE DATABASE $dbname FROM DISK=‘$filename‘ WITH REPLACE; ALTER DATABASE $dbname SET ONLINE"

增量恢复:osql -U $user -P "$password" -d master -S $instance -Q "ALTER DATABASE $dbname SET OFFLINE WITH ROLLBACK IMMEDIATE; RESTORE DATABASE $dbname FROM DISK=‘$filename‘ WITH REPLACE,NORECOVERY; RESTORE DATABASE $dbname FROM DIST=‘$diff_filename‘ WITH RECOVERY; ALTER DATABASE $dbname SET ONLINE"


三、oracle:

oracle的备份及恢复主要使用rman,感兴趣的可以详细去了解rman的具体使用


四、redis:

说明:redis的数据备份文件存储在配置文件中的dir+dbfilename组成的全路径文件名中;

备份:redis-cli -h targethost -p $port -a $password save

恢复:只需要将备份的文件放置原目录,重启redis即可。


五、mongo:

参数说明:

$targethost $port $dbname $backup_dir $user $password $table $recovery_dir
ip地址 端口 数据库名 保存路径 用户名 密码 表名(表级恢复) 恢复路径

备份:mongodump --host $targethost:$port -d $dbname -o $backup_dir -u $user -p $password 

恢复:mongorestore --host $targethost:$port -d $dbname -u $user -p$password -c $table $recovery_dir


六、postgres:

$targethost $port $user $dbname $filename $recovery_file
ip地址 端 口 用户名 数据库名 备份文件 恢复文件

备份:pg_dump -c -b -h $targethost -p $port -U "$user" $dbname > $filename 

恢复:psql -h $targethost -p $port -U "$user" -d $dbname -f $recovery_file


版权声明:本文为博主原创文章,未经博主允许不得转载。

mysql,sqlsever,oracle,redis,mongo,postgres等数据库备份及恢复指令整理

标签:mysql   sqlserver   oracle   备份   恢复   

原文地址:http://blog.csdn.net/xiaokfc/article/details/46839655

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!