当前位置:文档之家› Oracle10g数据库的备份与恢复

Oracle10g数据库的备份与恢复

Oracle10g数据库的备份与恢复
Oracle10g数据库的备份与恢复

oracle 10g备份与还原总结

一.总述

1.数据库归档模式:

* 非归档模式:当数据库数据只读不会改变时,数据不会改变,数据库适合用非归档模式, 这样提高性能

* 归档模式:对于数据库数据经常变动,数据库最好用归档模式,这样可以尽量避免数据库数据丢失,使出现问题时灾害降到最低

2.非归档模式与归档模式间的切换(在命令窗口下):

@检查当前日志操作模式

f:\>sqlplus sys/dba as sysdba

连接数据库

sql>select log_mode from v$database;

@关闭数据库,后装载数据库,只能在mount状态下改变日志操作模式

sql>startup mount

@改变日志模式

sql>alter database achivelog;(变为归档方式,否则为nochivelog)

sql>alter database open;

3.查看归档模式相关信息:

@若采用默认设置,归档日志位置在快速恢复区

@配置归档日志位置 log_archive_dest_n (n=[1:10])

sql>alter system set

log_archive_dest_1 = 'location =c:\demo\archive [optional]';

sql>alter system set

log_archive_dest_2 = 'service =standby [mandatory] [reopen]';

其中:location 是本地

service 是远程

optional 无论归档是否成功,都会覆盖重做日志

mandatory只有成功归档才会覆盖重做日志

reopen 重新归档时间间隔默认是300s

@显示归档信息,即显示显示日志操作模式

sql>select name,log_mode from v$database;

@显示归档日志信息

sql>select name,sequence#,first_change# from v$archive_log;

sequence#: 归档序列号

first_change# : 起始SCN值

@显示归档日志位置

sql>select dest_name,destination,status from v$archive_dest;

dest_name 归档位置参数名

destination 位置

@显示日志历史信息

sql>select * from v$loghist;

threade# : 重做线程号

sequence# : 日志序列号

first_change# : 起始SCN值

first_time : 起始SCN发生时间

switch_change : 切换SCN值

二.非归档模式下的备份与还原

. 日志采用覆盖原有日志的方式存储

. 出现介质失败时,只能恢复到过去的完全备份点

. 数据库OPEN状态是,不能备份数据库

. 必须先关闭数据库,再备份,且必须备份所有数据,控制文件

1.备份==冷备份

@ 先关闭数据库

sql>shutdown immediate

@ 拷贝所有数据文件,和控制文件

2.恢复

* 数据文件出现丢失,但备份以来的重做日志内容尚未被覆盖,此时可以完全恢复

@装载数据库

sql>startup force mount

@复制数据文件备份

@恢复数据文件

sql>recover datafile 1

@打开数据库

sql>alter database open;

* 备份文件的重做日志内容已经被覆盖,则只能还原到备份点

@关闭数据库

@复制所有数据和控制备份文件至原位置

@装载数据库,执行恢复命令

sql>startup mount

sql>recover database until cancel

提示控制文件不再使用原有重做日志

@用resetlogs选项打开数据库

sql>alter database open resetlogs;

三.归档模式

. 可以防止数据丢失

. 数据处于OPEN状态时可以进行备份

. 当出现介质失败时,除了SYSTEM表空间中的数据文件外其他的都可以在open状态下恢复

. 可执行完全恢复,也可以恢复到备份点与失败点之间的某时刻

1.备份

1)冷备份

shutdown后拷贝所需数据文件和控制文件

2)热备份

@将数据库设置为归档模式

@在数据库上发出全局检查点,在所有的数据文件头块上加锁

sql>alter database begin backup ;

@备份数据文件及控制文件

数据文件直接拷贝至其他目录

控制文件需使用alter database backup controlfile

sql>alter database backup controlfile to 'd:\backup\demo.ctl';

@结束数据备份,为确保数据文件备份的同步性,还应该归档当前日志组

sql>alter database end backup;

sql>alter system archive log cuurent;

3)备份表空间

*脱机备份(表空间处于OFFLINE状态,SYSTEM表空间和正在使用的UNDO空间不能脱机)

@确定表空间包涵的数据文件,如空间USERS

sql>select file_name from dba_data_files

where tablespace_name = 'users';

@设置表空间为脱机状态

sql>alter tablespace users offline;

@复制数据文件

@设置表空间联机

sql>alter tablespace users online;

*联机备份

@确定对应关系

@设置表空间为备份模式

sql>alter tablespace users begin backup ;

@复制数据文件

@设置表空间为正常模式

sql>alter tablespace users end backup ;

*处理联机备份失败

当执行联机备份时,若出现例程失败,再次打开数据库时,如果数据文件仍处于备份状态,则会出错,此时需要结束备份

@装载数据库

sql>startup force mount

@查看处于联机备份状态的所有数据文件

sql>select file# from v$backup where status = 'active';

@结束联机备份状态

sql>alter tablespace end backup

或alter tablespace datafile backup;

或recover datafile 序号

@打开数据库

sql>alter database open;

2.还原

1)完全恢复

相关命令:

recover database :恢复数据库的多个数据文件(在MOUNT状态下运行)

recover tadaspace :恢复多个表空间的所有数据文件(在open状态下运行)

recover datafile :恢复一个或多个数据文件(在mount,open 状态下都可)

*在mount状态下恢复数据文件(用于SYSTEM表空间恢复)

@装载数据库 mount状态

@确定需要恢复的数据文件

sql>select file#,error from v$recover_file

@拷贝备份至原位置

@恢复数据库 recover..上述命令

@打开数据库 alter database open;

*在open状态下恢复关闭后意外对视的数据文件,此时数据库将无法打开

@装载数据库 mount

@确定需要恢复的数据文件

@使相应的数据文件脱机

sql>alter database datafile 4 offline;

@打开数据库

sql>alter database open

@复制数据备份文件

@恢复数据文件

@是数据文件联机 alter database datafile 4 online; *在open状态下恢复打开时意外丢失的数据文件

@确定要恢复的数据文件

@使数据文件脱机

@复制数据文件

@恢复相应的表空间或数据文件

@使相应的表空间或数据文件联机

*在open状态下恢复未备份的数据文件(要求在归档模式下,新建数据文件,其从简历开始的所有归档日志必须全部存在)

@装载数据库

@确定要恢复的数据文件

@是数据文件脱机

@打开数据库

@重新建立数据文件

sql>alter database create datafile 'd:\demo\users01.dbf';

@恢复数据文件

@使数据文件联机

2)不完全恢复

使用已备份的数据文件,归档日志,和重做日志,将数据库恢复到备份点与失败点之间某个时刻的状态

*恢复分类

基于时间的恢复:误删除表,误截断表,提交了错误的数据

基于取笑恢复:恢复到某个日志序列号之前的状态

基于SCN的恢复:恢复到特定SCN值的状态

基于备份控制文件恢复:表空间被意外删除,或所有控制文件全部损坏

*不完全恢复指令

recover database until time

recover database until change

recover database until cancel

recover database .. using backup controlfile

*基于时间的恢复

@关闭数据库(为防止备份失败,应备份当前数据库所有文件 @装载数据库 startup mount

@复制所有备份数据文件,并确定备份文件的时间点

sql>select file#,to_char(time,'yyyy-mm-dd hh24:mi:ss)

from v$recover_file;

@执行recover database until time

sql>recover database until time "2006-09-26 16:40:33'

@以resetlogs方式打开数据库,并检查恢复结果

sql>alter database open resetlogs;

@备份数据库所有数据文件和控制文件,因为当以resetlogs方式打开数据库后会重新建立重做日志,清空原有重做日志的所有内容,并将日志序列号复位为1

sql>select name from v$datafile;

sql>alter database begin backup;

拷贝数据文件

sql>alter database end backup;

sql>alter database backup controlfile

to 'd:\backup\demo.ctl' reuse;

sql>alter system archive log cuurent;

*基于SCN恢复

@关闭数据库

@装载数据库 mount

@复制所有备份数据文件,确定备份文件SCN值

sql>select file#,change#, from v$recover_file; @执行recover database until change

sql>recover database until change 675978;

@以resetlogs方式打开数据库

@备份数据库所有数据文件和控制文件

*基于取消恢复

@关闭数据库

@装载数据库

@复制所有备份的数据文件,确定备份文件的SCN值

sql>select file#,change# from v$recover_file; @执行recover database until cancle

sql>recover database until cancel

@以resetlogs方式打开数据库

@备份所有数据文件和控制文件

*基于备份控制文件的恢复

@通过查看alert文件,确定误操作时间

@关闭数据库

@复制所有备份的数据文件,控制文件

@装载数据库

@执行recover database https://www.doczj.com/doc/99931242.html,ing backup controlfile sql>recover database until time '2004-09-26 19:51:06'

using backup controlfile

@以resetlogs 方式打开数据库

@备份所有数据文件和控制文件

Linux数据库命令

一、总结一下: 1.linux下启动mysql的命令: mysqladmin start /ect/init.d/mysql start (前面为mysql的安装路径) 2.linux下重启mysql的命令: mysqladmin restart /ect/init.d/mysql restart (前面为mysql的安装路径) 3.linux下关闭mysql的命令: mysqladmin shutdown /ect/init.d/mysql shutdown (前面为mysql的安装路径) 4.连接本机上的mysql: 进入目录mysql\bin,再键入命令mysql -uroot -p,回车后提示输入密码。 退出mysql命令:exit(回车) 5.修改mysql密码: mysqladmin -u用户名-p旧密码password 新密码 或进入mysql命令行SET PASSWORD FOR root=PASSWORD("root"); 6.增加新用户。(注意:mysql环境中的命令后面都带一个分号作为命令结束符) grant select on 数据库.* to 用户名@登录主机identified by "密码" 如增加一个用户test密码为123,让他可以在任何主机上登录,并对所有数据库有查询、插入、修改、删除的权限。首先用以root用户连入mysql,然后键入以下命令: grant select,insert,update,delete on *.* to " Identified by "123"; 二、有关mysql数据库方面的操作 必须首先登录到mysql中,有关操作都是在mysql的提示符下进行,而且每个命令以分号结束 1、显示数据库列表。 show databases; 2、显示库中的数据表: use mysql;//打开库 show tables; 3、显示数据表的结构: describe 表名; 4、建库: create database 库名; 5、建表: use 库名;

MySQL数据库备份与恢复

MySQL数据库备份与恢复方法 常有新手问我该怎么备份数据库,下面介绍3种备份数据库的方法: MySQL中的每一个数据库和数据表分别对应文件系统中的目录和其下的文件。 在Linux下数据库文件的存放目录一般为/var/lib/mysql。在Windows下这个目录视MySQL 的安装路径而定,DiaHosting的技术员一般为客户安装在D:serversoftmysql下。 如,有一个名为bbs的数据库,那么bbs的数据库文件会存放在/var/lib/mysql/bbs(linux)或者D:serversoftmysqlbbs(Windows)下。 备份文件前,需要将MySQL服务停止,然后将数据库目录拷贝即可。 恢复数据数据库时,需要先创建好一个数据库(不一定同名),然后将备份出来的文件(注意,不是目录)复制到对应的MySQL数据库目录中。 使用这一方法备份和恢复数据库时,需要新旧的MySQL版本一致,否则可能会出现错误。备份数据库: mysqldump –user=root –password=root密码–lock-all-tables 数据库名> 备份文件.sql 恢复数据库: mysql -u root –password=root密码数据库名< 备份文件.sql (3)使用Web程序 在这里我们推荐使用“帝国备份王”对MySQL进行备份。 主要优点: 1,跨平台。Windows与Linux下各种WEB环境均可以运行。 2,智能识别编码,解决备份时的乱码问题。 3,不同的MySQL版本间都可以进行备份和恢复操作。 4,采用分组备份,即使是超过1G的数据库也可以正常备份。 登录“帝国备份王”

DB2数据库备份与恢复

DB2数据库备份与恢复 1.备份 下列操作均是在db2cmd窗口下执行的: 1.1离线备份(必须在数据库所在PC机进行操作) STEP 1 连接到要备份的数据库 C:\Documents and Settings\Administrator>db2 connect to ncc user nccwykpi using nccwykpi STEP 2 显示数据库应用状态 C:\Documents and Settings\Administrator>db2 list applications 页脚内容1

STEP 3 停掉数据库应用 C:\Documents and Settings\Administrator>db2 force applications all 注意:由于该命令是异步的,所以在进行备份的时候会出现以下错误信息。此时可以再次执行db2 force applications all 命令。 页脚内容2

STEP 4 对数据库进行离线状态下的备份 C:\Documents and Settings\Administrator>db2 backup database ncc to d:\db2\backup 注意:指定的备份文件的输出目录必须是已创建的,否则会报错。 STEP 5 查看备份历史记录 C:\Documents and Settings\Administrator>db2 list history backup all for ncc 页脚内容3

页脚内容4

页脚内容5

1.2在线备份 注意:如果要做在线的备份,要对两个参数作修改:USEREXIT和 LOGRETAIN,将其 修改为on,默认是off的,默认使用日志模式,修改完参数后,可以变为归档日志模式,启用了userexit做数据库日志的归档。 STEP 1 查看数据库当前的属性 C:\Documents and Settings\Administrator>db2 get db cfg 页脚内容6

MySQL 数据库常用命令 简单超级实用版

MySQL 数据库常用命令简单超级实用版 1、MySQL常用命令 create database name; 创建数据库 use databasename; 选择数据库 drop database name 直接删除数据库,不提醒 show tables; 显示表 describe tablename; 表的详细描述 select 中加上distinct去除重复字段 mysqladmin drop databasename 删除数据库前,有提示。 显示当前mysql版本和当前日期 select version(),current_date; 2、修改mysql中root的密码: shell>mysql -u root -p mysql> update user set password=password(”xueok654123″) where user='root'; mysql> flush privileges //刷新数据库 mysql>use dbname;打开数据库: mysql>show databases; 显示所有数据库 mysql>show tables; 显示数据库mysql中所有的表:先use mysql;然后 mysql>describe user; 显示表mysql数据库中user表的列信息); 3、grant 创建一个可以从任何地方连接服务器的一个完全的超级用户,但是必须使用一个口令some thing做这个 mysql> grant all privileges on *.* to user@localhost identified by 'something' with 增加新用户

数据库操作命令

三、启动\关闭数据库 启动和关闭oracle有很多种方法。 这里只给出3种方法: ●Sql*plus ●OEM控制台 ●Windows 控制台 1.以sql*plus为例: a.准备 首先我们用sql*plus来连接到Oracle Sqlplus /nolog 是以不连接数据库的方式启动sql*plus Connect /as sysdba 是以DBA身份连接到oracle b.启动

启动还是比较简单的 Startup就OK了。 不过oracle启动模式有3种: ●Startup nomount (nomount模式)启动实例不加载数据库。 ●Startup mount (mount模式)启动实例加载数据库但不打开数据库 ●Startup (open 模式)启动实例加载并打开数据库,就是我们上面所用 的命令 Nomount模式中oracle仅为实例创建各种内存结构和服务进程,不会打开任何数据库文件,所以说: 1)创建新数据库 2)重建控制文件 这2种操作都必须在这个模式下进行。 Mount模式中oracle只装载数据库但不打开数据库,所以说: 1)重命名数据文件 2)添加、删除和重命名重做日子文件

3)执行数据库完全恢复操作 4)改变数据库的归档模式 这4种操作都必须在这个模式下进行 Open模式(就是我们上面的startup不带任何参数的)呵呵就不多说了,正常启动。 当然这3种模式之间可以转换: Alter database mount(nomount模式)—〉alter database open(mount 模式)—〉(open模式) 当然还有其它一些情况,在我们open模式下可以将数据库设置为非受限状态和受限状态 在受限状态下,只有DBA才能访问数据库,所以说: 1)执行数据导入导出 2)使用sql*loader提取外部数据 3)需要暂时拒绝普通用户访问数据库 4)进行数据库移植或者升级操作 这4种操作都必须在这个状态下进行

数据库备份和还原操作方法

数据库备份和还原 在收费系统运行一段时间后,如发生系统不正常要重装WINDOWS操作系统或更换电脑时,须按照下面“数据库备份”方法将原系统的数据文件备份,并将备份文件妥善保存(避免随系统重装而丢失数据),在重装系统或更换电脑后,按照软件的安装方法顺序安装SQL2000数据库和消费/水控管理软件,然后按照下面“数据还原”方法进行数据库还原,完成后系统中的数据即与原数据完全[相同。 数据库备份: 以ICSF为例,打开ICSF软件,选择菜单栏下的系统维护,然后选择数据备份。(系统维护——数据备份)如图(1-1): 1-1 数据备份完成后,可以在基本资料——系统参数里(1-2),在弹出的对话框上的备份路径二(手动备份)里可以找到数据备份的路径(1-3)。如图:

1-2 1-3 提示: 1、上述方法为手动备份,本系统在使用后正常腿出系统时也会自动进行 数据备份,如已经无法正常开启原电脑(无法进行手动备份)则可将 原电脑硬盘连接到其他电脑中,找到“备份路径一”所指向的路径, 找到备份文件夹,将其中修改日期最近的备份文件拷贝出来用于数据 还原。 2、在安装收费/水控系统时建议不要将安装目录选在C盘,避免因格式 化的操作是备份数据丢失,如果已经将软件安装在C盘,则建议将备 份文件路径指定为其他盘。 数据还原 数据还原,首先要找到备份的数据文件。如上所述,备份文件存放在E:\软件\ICSF5.74\Mdbbak上,根据路径找到Mdbbak文件夹并打开。 打开Mdbbak文件夹后,里面有类似这样的(1-4)BAK文件。 找寻最新的BAK文件,并把它与软件安装包(光盘)中IC挂接数据库.exe软件拷贝到电脑任意一个目录(文件夹)中,然后将备份文件重命名(光标放在备份文件 上点鼠标右键,选择重命名),改为ICSF.db。如图:(1-5)

MySQL完全备份、增量备份与恢复

MySQL完全备份、增量备份与恢复 适用版本] MySQL 4.x - 6.x [ 配置] 执行增量备份的前提条件是MySQL打开log-bin日志开关,例如在my.ini或https://www.doczj.com/doc/99931242.html,f中 加入 log-bin=C:/Program Files/MySQL/MySQL Server 6.0/Data/mysql-bin “log-bin=”后的字符串为日志记载目录,一般建议放在不同于mysql数据目录的磁盘上。 [ 完全备份] 假定星期日下午1点执行完全备份,适用于MyISAM存储引擎。 mysqldump --lock-all-tables --flush-logs --master-data=2 -u root -p test > backup_sunday_1_PM.sql 对于InnoDB 将--lock-all-tables替换为--single-transaction --flush-logs 为结束当前日志,生成新日志文件 --master-data=2 选项将会在输出SQL中记录下完全备份后新日志文件的名称, 用于日后恢复时参考,例如输出的备份SQL文件中含有: -- CHANGE MASTER TO MASTER_LOG_FILE='mysql-bin.000002', MASTER_LOG_POS=106; 其他说明: 如果mysqldump加上--delete-master-logs 则清除以前的日志,以释放空间。但是如果服务器配置为镜像的复制主服务器,用mysqldump --delete-master-logs删掉MySQL二进制日志很危险,因为从服务器可能还没有完全处理该二进制日志的内容。在这种情况下,使用PURGE MASTER LOGS更为安全。 [ 增量备份] 每日定时使用mysqladmin flush-logs来创建新日志,并结束前一日志写入过程。并 把前一日志备份,例如上例中开始保存数据目录下的日志文件mysql-bin.000002 , ... [ 从备份中恢复] * 恢复完全备份 mysql -u root -p < backup_sunday_1_PM.sql * 恢复增量备份 mysqlbinlog mysql-bin.000002 ... | mysql -u root -p 注意此次恢复过程亦会写入日志文件,如果数据量很大,建议先关闭日志功能。

数据库常用命令

oracle常用命令 命令解释 $Ps –ef|grep oracle 查看oracle进程是否启动 $ sqlplus "/as sysdba" 以sysdba角色登陆oracle数据库 SQL>startup 显示当前系统中已登录的人员。 SQL>shutdown immediate 关闭数据库 SQL>select * from v$version; 查看oracle数据库版本 SQL>select name from v$database; 查看数据库SID SQL>truncate table table_name 快速清空一个表 SQL>select * from all_users;查看数据库中所有用户 SQL>alter tablespacename offline;将表空间offline SQL> alter tablespacename online ;将表空间online $oerr ora 2236 查错误 alert_{ORACLE_SID}.log 数据库告警日志文件 *.TRC 数据库跟踪文件 Oracle说明 1、数文件:SPFILE不能直接阅读是二进制文件,需要转为文本 2、oracle数据库后,可以查看数据库状态是否open,如果open会显示open字样 SQL> select status, instance_role from v$instance; 3、PFILE:SQL> connect / as sysdba 从spfile创建pfile:SQL> create pfile from spfile; 从pfile创建spfile:CREA TE SPFILE FROM PFILE='/home/oracle/admin/pfile/init.ora'; 4、names是客户端或应用程序需要连接数据库时必须配置的,使用$tnsping service_aliasname可以测试出tns配置的是否正确 5、要文件listener.ora、Tnsnames.ora、Sqlnet.ora,这三个位置在$ORACLE_HOME/network/admin目录下。 6、库启动时要先启动listener Network配置:监听程序lsnrctl

数据库文件操作命令

数据库文件及记录命令 ADD TABLE 在当前数据库中添加一个自由表 APPEND 在表的末尾添加一个或多个新记录 APPEND FROM ARRAY 由数组添加记录到表中 APPEND FROM 从一个文件中读入记录,追加到当前表的尾部 APPEND GENERAL 从文件中导入OLE对象并将其放入通用字段中 APPEND MEMO 将文本文件的内容复制到备注字段中 APPEND PROCEDURES 将文本文件中的存储过程追加到当前数据库中 A VERAGE 计算数值表达式或字段的算术平均值 BLANK 清除当前记录中所有字段的数据 BROWSE 打开浏览窗口,显示当前或选定表的记录 CALCULATE 对表中的字段或包含字段的表达式进行财务和统计操作CHANGE 显示要编辑的字段 CLOSE 关闭各种类型的文件 CLOSE MEMO 关闭一个或多个备注编辑窗口 COMPILE DATABASE 编译数据库中的存储过程 CONTINUE 继续执行先前的LOCATE命令 COPY MEMO 复制当前记录中的指定备注字段的内容到文本文件 COPY PROCEDURES 将当前数据库中’的存储过程复制到文本文件 COPY STRUCTURE 用当前选择的表结构创建一个新的空自由表 COPY STRUCTURE EXTENDED 创建新表,它的字段包含当前选定表的结构信息COPY TO ARRAY 将当前选定表中的数据复制到数组

COPY TO 用当前选定表的内容创建新文件 COUNT 统计表中记录数目 CREATE 生成一个新的VisualFoxPro表 CREATE CONNECTION 创建一个命名连接并把它存储在当前数据库中 CREATE DATABASE 创建并打开一个数据库 CREATE TRIGGER 创建表的删除、插入或更新触发器 CREATE VIEW 从VisualFoxPro环境创建视图文件 DELETE 给要删除的记录做标记 DELETE CONNECTION 从当前数据库中删除一个命名连接 DELETE DATABASE 从磁盘上删除数据库 DELETE TRIGGER 从当前数据库的表中删除“删除”、“插入”或“更新”触发器│ DELETE VIEW 从当前数据库中删除一个SQL视图 DISPLAY 在VisualFoxPro主窗口或用户自定义窗口中显示与当前表有关的信息DISPLAY CONNECTIONS 显示当前数据库中与命名连接有关的信息 DISPLAY DATABASE 显示有关当前数据库的信息,或当前数据库中的字段、命名连接、表或视图的信息 DISPLAY MEMORY 显示内存变量和数组的当前内容 DISPLAY PROCEDURES 显示当前数据库中存储过程的名称 DISPLAY STRUCTURE 显示一个表文件的结构 DISPLAY TABLES 显示包含在当前数据库中所有的表和表的信息 DISPLAY VIEWS 显示当前数据库中关于SQL视图的信息以及SQL视图是否基于本地或远程表的信息 DROP TABLE 把一个表从数据库中移出,并从磁盘中删除它 DROP VIEW 从当前数据库中删除指定的SQL视图

mysql备份与恢复方案

服务器备份方案 一、MYSQL数据库备份与恢复: 数据库本地备份:当数据量少的时候可以在每天凌晨1点-3点进行完全备份,随着数据库的增大,可以2两小时(按照需求设置时间)做增量备份与完全备份相结合的备份方式以确保数据的安全。 数据库完全备份脚本: 1.确定我们备份文件存放的目录这里我把所有备份文件放到/home/mysqlback 2.确定需要备份的数据库,这里我们用备份d_test这个数据库来说明。 dbuser="root" #定义数据库用户名 dbpasswd="123456" #定义数据库密码 dbname="d_test" #定义需要备份的数据库 date1=`date +%Y%m%d` #读取当前日期 date2 = `date +%Y%m%d%H%M%S` #读取当前的日期时间Y年m月d日H小时M分钟S秒 date3 = `date -d -5day +"%Y%m%d"` #读取当天日期之5天前的日期 back = /home/mysqlback/$date1 #备份文件存放目录 #判断是不是有文件存放目录如果没有则新建。 if [ ! -d $back ] then mkdir -p $back fi #使用mysqldump命令来备份指定的数据库并且压缩成gz包。 mysqldump -u$dbuser -p$dbpasswd $dbname | gzip > $back/$dbname$date2.sql.gz #删除指定5天前备份的过期文件以便节省磁盘空间 cd /home/mysqlback rm -rf $date3 异地备份 首先准备一台异地的服务器,并且搭建好vsftp(vsftp具体搭建详细步骤请参考VSFTP搭建文档) 异地备份到vsftp服务器上脚本如下:

数据库备份与恢复

Oracle数据库备份与恢复的三种方法 2009-11-04 16:00 Oracle数据库有三种标准的备份方法,它们分别是导出/导入(EXP/IMP)、热备份和冷备份。导出备件是一种逻辑备份,冷备份和热备份是物理备份。 一、导出/导入(Export/Import) 利用Export可将数据从数据库中提取出来,利用Import则可将提取出来的数据送回到Oracle数据库中去。 1、简单导出数据(Export)和导入数据(Import) Oracle支持三种方式类型的输出: (1)、表方式(T方式),将指定表的数据导出。 (2)、用户方式(U方式),将指定用户的所有对象及数据导出。 (3)、全库方式(Full方式),瘵数据库中的所有对象导出。 数据导入(Import)的过程是数据导出(Export)的逆过程,分别将数据文件导入数据库和将数据库数据导出到数据文件。 2、增量导出/导入 增量导出是一种常用的数据备份方法,它只能对整个数据库来实施,并且必须作为SYSTEM来导出。在进行此种导出时,系统不要求回答任何问题。导出文件名缺省为export.dmp,如果不希望自己的输出文件定名为export.dmp,必须在命令行中指出要用的文件名。 增量导出包括三种类型: (1)、“完全”增量导出(Complete) 即备份三个数据库,比如: (2)、“增量型”增量导出 备份上一次备份后改变的数据,比如:

(3)、“累积型”增量导出 累计型导出方式是导出自上次“完全”导出之后数据库中变化了的信息。比如: 数据库管理员可以排定一个备份日程表,用数据导出的三个不同方式合理高效的完成。 比如数据库的被封任务可以做如下安排: 星期一:完全备份(A) 星期二:增量导出(B) 星期三:增量导出(C) 星期四:增量导出(D) 星期五:累计导出(E) 星期六:增量导出(F) 星期日:增量导出(G) 如果在星期日,数据库遭到意外破坏,数据库管理员可按一下步骤来回复数据库: 第一步:用命令CREATE DATABASE重新生成数据库结构; 第二步:创建一个足够大的附加回滚。 第三步:完全增量导入A: 第四步:累计增量导入E: 第五步:最近增量导入F:

数据库常用命令集合

创建数据库:[库名] 显示所有数据库: ; 打开数据库[库名] 当前选择地库状态(); 创建数据表[表名]([字段名] [字段类型]([字段要求]) [字段参数], ......); 资料个人收集整理,勿做商业用途 显示数据表字段表名; 当前库数据表结构; 更改表格 [表名] [字段名] 说明:增加一个栏位(没有删除某个栏位地语法. [表名] ([字段名]) 说明:更改表得地定义把某个栏位设为主键. [表名] ([字段名]) 说明:把主键地定义删除. 显示当前表字段; 删库[库名]; 删表[表名]; 数据操作 添加:[表名] ('','',......顺序排列地数据); 查询: * [表名] ([条件]); 建立索引[索引文件名] [表名] ([字段名]); 删除:[表名] ([条件]); 修改:[表名] [修改内容如''] [条件];资料个人收集整理,勿做商业用途 导入外部数据文本: .执行外部地脚本 当前数据库上执行< 指定数据库上执行[表名] < .数据传入命令"[文件名]" [表名]; 资料个人收集整理,勿做商业用途 备份数据库:(下) > 提示:常用命令以";"结束,有少量特殊命令不能加";"结束,如备份数据库 一. 增删改查操作 资料个人收集整理,勿做商业用途 . 增: 表名(,'测试'); 注:如上语句,表结构中有自动增长地列,也必须为其指定一个值,通常为 表名() (,'尹当')同上 .删数据: 表名; 表名; 删除结构: 删数据库:数据库名; 删除表:表名;

删除表中地列表名列名; . 改: 修改所有:表名列名'新地值,非数字加单引号' ; 带条件地修改:表名列名'新地值,非数字加单引号' ; .查: 查询所有地数据:* 表名; 带条件地查询: * 表名列名条件值; * 表名列名()'字符值' 分页查询:* 表名每页数量偏移量; 二.操作命令 资料个人收集整理,勿做商业用途 . 查看数据库信息:; .查看表信息:; .查看表地结构:表名 . 新建数据库数据库名; .操作指定数据库数据库名; .新建数据表(先操作库); 表名(规范为表名) ( ,( 为自动增长) 资料个人收集整理,勿做商业用途 () ) 支持事务和设置表地编码 添加主外键: 外表名名称(外列) 主表名(主列) 资料个人收集整理,勿做商业用途 如现有两表主表子表现子表地列引用了主表地列资料个人收集整理,勿做商业用途则命令如下: () () 资料个人收集整理,勿做商业用途 .导出表,备份到一个文件中,如 命令窗口:用户名需要备份地数据库名>备份地文件地保存路径和文件名资料个人收集整理,勿做商业用途 注:如指定地文件不存在,会自动添加一个文件,此命令不能加分号结尾(文件没有备份建数据库操作)资料个人收集整理,勿做商业用途 .导入数据库备份文件: ().在命令窗口 ().新建一个要导入地数据库(因为备份中没有备份建数据库操作) () 当前库名 () 备份地文件地保存路径和文件名(此命令不能加分号结尾) 三:系统操作 资料个人收集整理,勿做商业用途 . 打开服务(为配置时,可自定名称) .关闭服务 .从模式进入 () 用户名回车>输入正确密码>进入欢迎

VF6.0数据库常用命令

VF6.0常用命令 一、基本命令 APPEND 在表的末尾添加一个或多个新记录APPEND FROM 从一个文件中读入记录,追加到当前表的尾部 AVERAGE 计算数值表达式或字段的算术平均值BROWSE 打开浏览窗口,显示当前或选定表的记录CHANGE 显示要编辑的字段 CLOSE 关闭各种类型的文件 COPY STRUCTURE 用当前选择的表结构创建一个新的空自由表 COPY TO ARRAY 将当前选定表中的数据复制到数组COPY TO 用当前选定表的内容创建新文件 COUNT 统计表中记录数目 CREATE 生成一个新的VisualFoxPro表 CREATE DATABASE 创建并打开一个数据库 DELETE 给要删除的记录做标记 DELETE DATABASE 从磁盘上删除数据库 DELETE VIEW 从当前数据库中删除一个SQL视图DISPLAY 在VisualFoxPro主窗口或用户自定义窗口中显示与当前表有关的信息 DISPLAY DATABASE 显示有关当前数据库的信息,或

当前数据库中的字段、命名连接、表或视图的信息DISPLAY MEMORY 显示内存变量和数组的当前内容DISPLAY STRUCTURE 显示一个表文件的结构DISPLAY VIEWS 显示当前数据库中关于SQL视图的信息以及SQL视图是否基于本地或远程表的信息DROP TABLE 把一个表从数据库中移出,并从磁盘中删除它 DROP VIEW 从当前数据库中删除指定的SQL视图FIND 查找记录 GO|GOTO 将记录指针移动到指定记录上 INSERT 插入记录 JOIN 将两个数据库文件合并 LIST 连续显示表或环境信息 LIST DATABASE 连续显示有关当前数据库的信息LOCATE 按顺序搜索表从而找到满足指定逻辑表达式的第一个记录 MODIFY DATABASE 打开数据库设计器,让你能够交互地修改当前数据库 MODIFY STRUCTURE 显示表设计器 MODIFY VIEW 显示视图设计器 OPEN DATABASE 打开一个数据库 PACK 从当前表中永久删除标有删除标记的记录

AnyBackup MySQL定时备份与恢复最佳实践手册

.

目录 第 1 章 . 概述 (1) 1.1.目标读者 (1) 1.2.本文档适用范围 (1) 1.3.MySQL 定时备份功能模块简介 (1) 第 2 章. MySQL 基础知识简介 (1) 2.1.MySQL 简介 (1) 2.2.MySQL 引擎介绍 (1) 2.3.关键技术原理 (1) 2.3.1.MySQL 数据库定时备份原理分析 (1) 2.3.2.MySQL 数据库恢复原理分析 (2) 第 3 章. MySQL 定时备份最佳实践 (3) 3.1.MySQL 定时备份最佳实践 (3) 3.1.1.部署注意事项 (3) 3.1.2.定时备份最佳操作 (3) 3.2.MySQL 恢复最佳实践 (13) 3.2.1.部署注意事项 (13) 3.2.2.定时备份的恢复最佳操作 (14) 3.3.FAQ (16)

第1章. 概述 本文档是爱数备仹容灾家族MySQL 一体化容灾最佳实践文档,主要描述了如何正确地使用爱数备仹容灾家族产品成员迚行 MySQL 定时备仹恢复的方法,包括部署前后的注意事项和典型部署方案。 1.1.目标读者 本技术文档面向爱数备仹容灾家族产品成员的用户和相关技术人员,主要介绍 MySQL 数据库定时备仹不恢复的基础知识,以及如何正确使用爱数备仹容灾家族产品成员部署MySQL 数据库定时备仹方案。 旨在通过此文档帮劣用户和技术人员快速掊插MySQL 数据库定时备仹模块的使用方法。 1.3.MySQL 定时备份功能模块简介

恢复位置原位置 恢复粒度整个实例、单个数据库异机恢复支持

第2章. MySQL 基础知识简介 2.1.MySQL 简介 MySQL 是一个小型关系型数据库管理系统,开发者为瑞典MySQL AB 公司。目前MySQL 被广泛地应用在 Internet 上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL 作为网站数据库。 2.2.MySQL 引擎介绍 MyISAM:MySQL 的默讣数据库,最为常用。拥有较高的揑入,查询速度,但不支持事务。 InnoDB:事务型数据库的首选引擎,支持 ACID 事务,支持行级锁定。 BDB:源自 Berkeley D B,事务型数据库的另一种选择,支持 COMMIT 和 ROLLBACK 等其他事务特性 Memory :所有数据置于内存的存储引擎,拥有极高的揑入,更新和查询敁率。但是会占用和数据量成正比的内存空间。幵丏其内容会在 Mysql 重新启劢时丢失。 Merge:将一定数量的 MyISAM 表联合而成一个整体,在超大规模数据存储时徆有用。 Archive:非常适合存储大量的独立的、作为历叱记弽的数据。它们不经常被读取。Archive 拥有高敁的揑入速度,但其对查询的支持相对较差。 Federated:将不同的 MySQL 服务器联合起来,逡辑上组成一个完整的数据库。非常适合分布式应用 Cluster/NDB :高冗余的存储引擎,用多台数据机器联合提供服务以提高整体性能和安全性。适合数据量大,安全和性能要求高的应用。 CSV:逡辑上由逗号分割数据的存储引擎。 BlackHole:黑洞引擎,写入的仸何数据都会消失,一般用于记弽 binlog 做复制的中继。 2.3.关键技术原理 2.3.1.MySQL 数据库定时备份原理分析 本版本,MySQL 数据库定时备仹采用的是脚本+文件备仹方式。爱数备仹软件系统首先根据用户的选择获取数据源,然后根据数据库类型生成相应的备仹脚本。接着,备仹系统调用备仹脚本,该脚本可以让数据库自带的备仹工具迚行备仹,幵将备仹集放到临时路径。随后备仹系统将生产的备仹集备仹到介质服务器,最后删除备仹脚本和临时路径的备仹内容。 ?支持的备仹类型:完全备仹 ?备仹命令调用: 1.备份整个实例 mysqldump -u root -p https://www.doczj.com/doc/99931242.html, --all-database > “E:\homebakpath\allDatab ases\localhost_allDatabases_2012121210352.full”

Informix数据库常用操作命令

Unix系统及数据库常用操作命令 oninit 数据库启动 onmode -ky 数据库关闭 onstat -l 查看逻辑日志使用情况 ontape -c 连续备份逻辑日志 onstat -g iof 查看每个chunk 的I/O 情况 onstat -g mem 查看数据库存的情况 onstat -d 查看数据库chunk 的使用情况 ontape -s -L 0 数据库0 级备份 dbimport -d -i

数据恢复(硬盘) dbexport -o 数据备份(硬盘) update staistics (high) (low) 数据库数据抽样统计 ontape -r 数据恢复(磁带) onstat -c 配置情况 onstat - 数据库状态信息 ps –ef |grep cmcld 查看MC/Service Guard 进程 cmviewcl 查看MC/Service Guard 运行情况 cmruncl [ f ] 启动群集 cmhaltcl [ -f ] 终止群集 cmrunnode node 启动群集中的一个结点 例:# cmrunnode HPK460-1 cmhaltnode mode 终止群集中的一个结点 例:# cmhaltnode HPK460-1 cmrunpkg -n node pkg 在节点node 上运行pkg 包 例:# cmrunpkg -n HPK460-1 pkg1 cmhaltpkg -n node pkg 在节点node 上终止运行pkg 包 例:# cmhaltpkg -n HPK460-1 pkg1 cmmodpkg -e -n node pkg 允许在节点node 上运行pkg 包 例:# cmmodpkg -e -n HPK460-1 pkg1 cmmodpkg -d -n node pkg 禁止在节点node 上运行pkg 包 例:# cmmodpkg -d -n HPK460-1 pkg1 cm 系列命令,均可附加参数“-v”,以冗余模式显示执行结果;参数“-f”表示强制执行而忽略错误警告。 vgdispaly [-v] vg_name 显示激活的卷组信息 例:# vgdispaly ;# vgdisplay /dev/vgo2 lvdisplay [-v] lv_path 显示激活的逻辑卷信息 例:# lvdisplay /dev/vg02/rootdbs vgchange -a y vg_name 激活卷组 例:# vgchange -a y /dev/vg02 vgchange -a e vg_name 以互斥方式激活卷组 例:# vgchange -a e /dev/vg02

mysql数据库备份与恢复

my sql数据库备份与恢复 windows下实现mysql数据库定时备份功能一、进入mysql的bin目录 二、导出: [mysql bin path]>mysqldump--opt-d-u root-p dbn> backup-file.sql Enter password:****** 三、导入: [mysql bin path]>mysql-u root-p dbn<backup-file.sql Enter password:****** 四、收尾工作:清理sql文件,导出时会在bin目录下生成backup-file.sql 文件,在导入工作完成后就没用了,可以删了,当然留着也可以。

我自己的用的备份语句: d: cd\mysql\mysql5.1.30\bin mysqldump--opt-uroot-p123456 bbs_sikaozhoubao_com>E:\backup\bbs_sikaozhoubao_com\%date:~ 0,4%%date:~5,2%%date:~8,2%%time:~0,2%%time:~3,2%%time:~6,2%.sq l 更多的说明: 导出要用到MySQL的mysqldump工具,基本用法是: shell>mysqldump[OPTIONS]database[tables] 如果你不给定任何表,整个数据库将被导出。 通过执行mysqldump--help,你能得到你mysqldump的版本支持

的选项表。 注意,mysqldump没有--quick或--opt选项,mysqldump将在导出结果前装载整个结果集到内存中,如果你正在导出一个大的数据库,这将可能是一个问题。 mysqldump支持下列选项: --add-locks 在每个表导出之前增加LOCK TABLES并且之后UNLOCK TABLE。(为了使得更快地插入到MySQL)。 --add-drop-table 在每个create语句之前增加一个drop table。

常用数据库命令

2、关闭表命令:USE 、CLOSE ALL P68 3、记录指针定位命令:GO 数值表达式(绝对移动)、SKIP(相对移动)P69-70 4、替换(修改)记录命令:REPLACE 字段1 WITH 表达式1,字段2 WITH 表达式2…… [范围][FOR<条件>] P79 5、复制表命令: COPY TO 新文件名 [FOR〈条件〉][范围] P84 复制表结构命令:COPY STRU TO 新表文件名 [FIEL 〈字段名表〉] P85 6、建立索引命令:INDEX ON 关键字段 TO 单索引文件名 INDEX ON 关键字段 TAG 索引标识名 P89 7、查询命令:(1)条件查询:LOCATE FOR 〈条件〉 P93 继续查找命令:CONTINUE P93 (2)索引查询:FIND 字符表达式 P94 SEEK 表达式 P95 继续查找命令:SKIP P95 8、选择工作区命令: SELE 工作区号|别名 P105 9、建立表之间的关联命令:SET RELATION TO 关联表达式 INTO 别名P108 10、表的更新命令:参考我的课件第三章第五节关于表的更新部分UPDATE ON 关键字段 FROM 别名 REPLACE 字段1 WITH 表达式1,字

段2 WITH 表达式2 …… [RANDOM] 11、交互式输入命令: (1)INPUT [提示信息] TO 内存变量 P139 (2)ACCEPT [提示信息] TO 内存变量 P139 13、输出命令:?和?? P141 常用命令: 1、设置默认路径命令: SET DEFA TO 盘符:\路径 2、关闭表命令:CLOSE TABLE,CLEAR ALL 3、记录显示命令:LIST/DISP [范围][FOR 〈条件〉] P72 4、追加记录命令:(1)表尾追加:APPEND [BLANK] P80 (2)表中插入:INSERT [BEFORE] [BLANK] P81 P81 (3)从其他文件中追加多条记录到当前表:APPEND FROM 文件名[FOR〈条件〉][FIEL <字段名表>] 5、删除记录命令:DELE [范围][FOR<条件>] P82 6、彻底删除带标记记录命令:PACK 7、取消删除标记命令:RECALL [范围][FOR<条件>] P83 8、物理删除表中所有记录命令:ZAP P84 9、复制任何类型文件:COPY FILE 〈文件名1〉TO 〈文件名2〉 P84 10、将单个记录发送到数组:SCATTER TO 〈数组名〉[FIEL〈字段名

数据库(SQL)操作命令大全

下列语句部分是Mssql语句,不可以在access中使用。 SQL分类: DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE) DML—数据操纵语言(SELECT,DELETE,UPDATE,INSERT) DCL—数据控制语言(GRANT,REVOKE,COMMIT,ROLLBACK) 首先,简要介绍基础语句: 1、说明:创建数据库 CREATE DATABASE database-name 2、说明:删除数据库 drop database dbname 3、说明:备份sql server --- 创建备份数据的device USE master EXEC sp_addumpdevice 'disk', 'testBack', 'c:\mssql7backup\MyNwind_1.dat' --- 开始备份 BACKUP DATABASE pubs TO testBack 4、说明:创建新表 create table tabname(col1 type1 [not null] [primary key],col2 type2 [not null],..) 根据已有的表创建新表: A:create table tab_new like tab_old (使用旧表创建新表) B:create table tab_new as select col1,col2… from tab_old definition only 5、说明:删除新表drop table tabname 6、说明:增加一个列 Alter table tabname add column col type 注:列增加后将不能删除。DB2中列加上后数据类型也不能改变,唯一能改变的是增加varchar类型的长度。 7、说明:添加主键:Alter table tabname add primary key(col) 说明:删除主键:Alter table tabname drop primary key(col) 8、说明:创建索引:create [unique] index idxname on tabname(col….) 删除索引:drop index idxname 注:索引是不可更改的,想更改必须删除重新建。 9、说明:创建视图:create view viewname as select statement 删除视图:drop view viewname 10、说明:几个简单的基本的sql语句 选择:select * from table1 where 范围 插入:insert into table1(field1,field2) values(value1,value2) 删除:delete from table1 where 范围 更新:update table1 set field1=value1 where 范围 查找:select * from table1 where field1 like ?%value1%? ---like的语法很精妙,查资料! 排序:select * from table1 order by field1,field2 [desc] 总数:select count * as totalcount from table1 求和:select sum(field1) as sumvalue from table1

文本预览
相关文档 最新文档