欢迎来到个人简历网!永久域名:gerenjianli.cn (个人简历全拼+cn)
当前位置:首页 > 范文大全 > 实用文>Informix数据备份技巧数据库

Informix数据备份技巧数据库

2023-09-16 08:43:52 收藏本文 下载本文

“甜筒味雪糕”通过精心收集,向本站投稿了10篇Informix数据备份技巧数据库,下面是小编整理后的Informix数据备份技巧数据库,欢迎大家阅读借鉴,并有积极分享。

Informix数据备份技巧数据库

篇1:Informix数据备份技巧数据库

在大型的项目 开发 中,一个项目组通常会在小型的模拟环境中进行初步开发,待系统初步稳定后,再把开发环境移到新系统中,最后才把旧系统切换到新系统中去,但在模拟环境中,一般 数据库 服务器 的配置都较低,而且不会有专门的数据备份措施,一旦掉电或误操

在大型的项目开发中,一个项目组通常会在小型的模拟环境中进行初步开发,待系统初步稳定后,再把开发环境移到新系统中,最后才把旧系统切换到新系统中去。但在模拟环境中,一般数据库服务器的配置都较低,而且不会有专门的数据备份措施,一旦掉电或误操作,便容易出现数据丢失、数据库毁坏的情况,开发人员的一番心血便会白费。因此,需要一种简单而又有效的数据备份方法。

我们假设模拟环境的数据库服务器的操作系统是RerhatLinux7,数据库服务器为Informix Online Dynamic Server 7.0,需要备份的数据库名称为dbtemp。在开发过程中,我们要求能对数据库表结构和其中的数据每天都能定时进行自动备份。因此我们需要使用crontab进行工作日程安排,crontab是操作每个用户的守护程序和该执行的时间表。 crontab文件的格式:M H D m d cmd。

M: 分钟(0-59)。

H:小时(0-23)。

D:天(1-31)。

m: 月(1-12)。

d: 一星期内的天(0~6,0为星期天)。

cmd要运行的程序,程序被送入sh执行,这个shell只有USER,HOME,SHELL这三个环境变量。

root用户使用crontab -e命令编辑crontab文件,在本例中,文件内容如下:

#backup zhdata start;

24 15 * * * su -l -c “dbschema -d dbtemp -ss /opt/informix/data/dbtemp.sql” informix

25 15 * * * su -l -c “dbaclearcase/” target=“_blank” >ccess dbtemp /opt/informix/data/create_unload.sql“ informix

27 15 * * * su -l -c ”dbaccess dbtemp /opt/informix/data/unload.sql“ informix

#backup zhdata end;

文件中的第一条语句指定每天下午3点24分创建数据库dbtemp模式文件dbtemp.sql;第二条语句指定每天下午3点25分使用dbaccess执行create_unload.sql 文件,create_unload.sql文件内容如下: UNLOAD TO /opt/Informix/data/unload.sql DELIMITER ';'

SELECT ”unload to /opt/informix/data/“||tabname||

”.txt delimiter '$' select * from “||tabname

FROM systables WHERE tabid >99

这是一条嵌套式SQL语句,能够把数据库中的除系统表以外的所有表找出来,

假设数据库中除了系统表外,还有用户表userinfo1,userinfo2,.…,userinfon,那么执行该语句后生成的unload.sql文件内容将为:

unload to /opt/Informix/data/userinfo1.txt delimiter '$' select * from userinfo1;

unload to /opt/Informix/data/userinfo1.txt delimiter '$' select * from userinfo2;

…… unload to /opt/Informix/data/userinfo1.txt delimiter '$' select * from userinfon;

然后第3条语句指定每天下午3点27分使用dbaccess执行unload.sql文件,unload语句完成的是把表中的数据内容倒出成以指定分隔符分隔字段的文本文件;在本例中,unload.sql文件实现导出数据库中出系统表以外的各表数据,生成以'$'符号分隔的文本文件,即把数据库除系统表以外的各表数据都导成以'$'符号分隔的文本文件,存放在/opt/Informix/data目录下面。这样,一个简单的数据备份便完成了。

原文转自:www.ltesting.net

篇2:Oracle数据库备份技巧

利用下面的列出的技巧来确保你不会在每周一次的数据库备份过程中忘记关键步骤。

每周一次备份主数据库。如果你创建、修改或者停止一个数据库,添加新的sql server消息,添加或者停止连接服务器,或者添加记录设备,那就进行手工备份。

每天备份一次msdb数据库。它一般非常小,但很重要,因为它包含了所有的sql server工作、操作和计划任务。

只有当你修改它时,才有必要备份模型数据库。

用sql server agent来安排你的备份工作的时间表。

如果在你的生产(production)环境中有现成资源,备份生产数据库到本地磁盘或者网络服务器(用同一个开关)。然后,把备份文件/设备拷贝到磁带上。在存在许多硬件故障(特别是在raid系统中)的情况下,磁盘常常是完好的(inact)。如果备份文件是在磁盘上,那么恢复时的速度会提高很多。

备份开发和测试数据库至少要用到simple恢复模型。

除了有计划的定时备份外,在进行未记录的(nonlogged)批操作(如,批拷贝)、创建索引、或者改变恢复模型后要备份用户数据库。

如果你使用的是simple恢复模型,记住在截短(truncate)交易记录之后备份你的数据库。

用文档记录你的恢复步骤。至少要大概记录这些步骤,注意所有的重要文件的位置。

--------------------------------------------------------------------------------

在截短记录之前,也就是所有的已提交(committed)交易从记录中清空之前,所有的这些信息都保存在交易记录中。在simple恢复模型中,记录在一个checkpoint期间内截短(在sql server内存缓冲写道磁盘时),它是自动发生的,但也可以手动执行。这也就是simple恢复模型不支持时间点(point-in-time)恢复的原因。在full和bulk_logged恢复模型下,当交易记录被备份时,交易记录被截短,除非你明确指出不进行截短。

为了备份交易记录,使用backup log命令。其基本语法与backup命令非常相似:

backup log { database } to

下面是如何把交易记录备份到一个名为logbackupdevice的逻辑设备上的例子:

backup transaction northwind to logbackupdevice

如果你不希望截短交易记录,使用no_truncate选项,如下所示:

backup transaction northwind to logbackupdevice with no_truncate

只是基本知识。

尽管我在本文中仅仅概述了数据库恢复的基本知识,你还是可以通过这些技巧来找到正确的方向。那么,为了避免不必要的(丢失数据造成的)恐慌,你要做到每周备份主数据库,每天备份msdb。

篇3:SELECT into outfile备份数据库数据

select email into outfile ”test.txt“ from email;

select substring(boss,0,2),addr from guest;

LOAD DATA [LOW_PRIORITY | CONCURRENT] [LOCAL] INFILE “/opt/abc.txt” INTO TABLE table_name -www.2cto.com-

FIELDS TERMINATED BY ',' (column1, column2,colum3);

mysql>SELECT * FROM table1 INTO OUTFILE 'data.txt'

FIELDS TERMINATED BY ','

FROM ...

为了将由逗号分隔的文件读回来,正确的语句将是:

mysql>LOAD DATA INFILE 'data.txt' INTO TABLE table2

FIELDS TERMINATED BY ','; -www.2cto.com-

相反,如果你试图用下面显示的语句读取文件,它不会工作,因为它命令LOAD DATA INFILE在字段之间

寻找定位符:

mysql>LOAD DATA INFILE 'data.txt' INTO TABLE table2

FIELDS TERMINATED BY '\t';

可能的结果是每个输入行将被解释为单个的字段,

LOAD DATA INFILE能被用来读取从外部来源获得的文件。例如,以dBASE格式的文件将有由逗号分隔并用

双引号包围的字段。如果文件中的行由换行符终止,下面显示的命令说明你将用来装载文件的字段和行

处理选项:

mysql>LOAD DATA INFILE 'data.txt' INTO TABLE tbl_name

FIELDS TERMINATED BY ',' ENCLOSED BY '“'

LINES TERMINATED BY '\n'; -www.2cto.com-

任何字段或行处理选项可以指定一个空字符串(''),

如果不是空,FIELDS [OPTIONALLY] ENCLOSED BY和

FIELDS ESCAPED BY值必须是一个单个字符。FIELDS TERMINATED BY和LINES TERMINATED BY值可以是超

过一个字符。例如,写入由回车换行符对(CR+LF)终止的行,或读取包含这样行的一个文件,指定一个

LINES TERMINATED BY '\r \n'子句。 -www.2cto.com-

FIELDS [OPTIONALLY] ENCLOSED BY控制字段的包围字符。对于输出 (SELECT ... INTO OUTFILE),如果

你省略OPTIONALLY,所有的字段由ENCLOSED BY字符包围。对于这样的输出的一个例子(使用一个逗号作

为字段分隔符)显示在下面:

”1“,”a string“,”100.20“

”2“,”a string containing a , comma“,”102.20“

”3“,”a string containing a \“ quote”,“102.20”

“4”,“a string containing a \”, quote and comma“,”102.20“

=================

insert into tabl(id,email) select id, email from guest;

作者 huimai

篇4:实现Oracle异地数据自动备份方案数据库

相关命令 文中主要用到三个命令,这里先单独介绍一下: export: 将数据库中数据备份成一个二进制系统文件,它有三种模式: 用户模式、表模式、整个数据库模式,还可分为三种备份类型:完全型、积累型、增量型。本文以整个数据库模式下的完全型为例说明。expor

相关命令

文中主要用到三个命令,这里先单独介绍一下:

export: 将数据库中数据备份成一个二进制系统文件,它有三种模式: 用户模式、表模式、整个数据库模式。还可分为三种备份类型:完全型、积累型、增量型。本文以整个数据库模式下的完全型为例说明。export使用格式为:exp userid file。

其中:userid的用法为username/userpassword,即Oracle中的用户名/口令。userid必须为exp的第一个参数,file指备份文件所放位置及名称。

ftp:一般情况下可通过交互方式实现两台主机间的数据传输,即需要手工输入目标主机的IP地址、用户名、口令等。但是当用户使用ftp命令时,系统将会先在该用户的注册目录中寻找.netrc文件,并首先执行该文件。这样,我们可以通过编写一个.netrc的文件来达到自动备份的目的。要注意该文件必须命名为.netrc,且必须存放在启动ftp命令主机上的用户注册目录里。ftp常用选项:

-i:进行多文件传送时关闭交互提示;

-n:在连接之后不进行自动登录。

本文使用“-i”选项,以关闭交互提示。

crontab:cron是一个永久进程,它由/etc/rc.local启动执行。cron检查/var/spool/cron/crontabs/目录中的文件,找到所要执行的任务和执行任务的时间,并自动完成。该目录中文件由crontab命令建立。用户所建立的crontab文件存于/var/spool/cron/crontabs中,其文件名与用户名一致,本文使用crontab的用户为Oracle,所建立的文件名也为Oracle。

cron使用者的权限记载在下列两个文件中: /usr/var/adm/cron/cron.deny和/usr/var/adm/cron/cron.allow。前面的文件中所列的用户不允许使用crontab命令;后一文件中所列的用户允许使用crontab命令。crontab命令的常用格式为:

crontab -l:显示用户的crontab文件的内容;

crontab -r:从crontabs目录中删除用户的crontab文件;

crontab -e:编辑用户的crontab文件。

crontab文件每行中有6个字段,前5个为时间设定段,第6个为所要执行的命令。时间段分别为: minutes、hours、day of month、month、day of week,字段之间用空格或Tab分开。字段如果为“*”,表示该字段在所有可能的取值范围内取值; 如果一个字段是由连字符隔开的两个数字,表明命令可以在两个数字之间的范围内执行。

备份数据库

设定数据库的拥有者为Oracle,用户名为mistest,其口令为test,新建备份目录为/export/home/oracle/backup。建立一个命名为testbackup的备份文件,文件内容如下:

ORACLE-HOME=/export/home/oracle/815;export ORACLE-HOME

ORACLE-SID=ora815;export ORACLE-SID

rm /export/home/oracle/backup/*

rq=丶date +“%m%d”丶

/export/home/oracle/815/bin/exp mistest/test file=/export/home/oracle

/backup/exp$rq.dmp log=/exoport/home/oracle/backup/exp$rq.log

说明:前两句对Oracle数据库初始化,第3条语句清空备份目录,第4条语句建立一个取当前日期的变量,以便在最后一条语句的备份文件名里含有当前日期信息,

testbackup编写完成后,用“chmod +x testbackup”命令授予它可执行权限。

异地传输

在备份主机里建立一个备份目录:/data/oradata/newbackup, 在本地主机Oracle用户的注册目录/export/home/oracle里建立一个.netrc文件。设定好备份主机的IP地址,备份主机上的用户为oraclebk, 口令为testbk2。.netrc文件内容为:

machine x.x.x..x

login oraclebk

password testbk2

macdef init

bin

lcd /export/home/oracle/backup

cd /data/oradata/backup

mput *

bye

说明:前3条语句完成在备份主机上的登录,第4条语句定义一个名为init的宏,第5条语句表示以二进制传输,第6条语句表示进入本地工作目录,第7条语句表示进入备份主机目录,第8条语句完成将本地主机/export/home/oracle/backup目录下的所有文件传输至备份主机/data/oradata/backup目录下,最后一条语句退出ftp会话进程。.netrc文件编写完成后,用命令“chmod 600 .netrc”使该文件只能被该用户所访问。

自动执行

我们以oracle用户登录本地主机,用“crontab -e”编写crontab文件用以启动自动备份进程。oracle文件内容如下:

10 23 * * * /export/home/oracle/testbackup

30 23 * * * ftp -i x.x.x.x

说明:第1条语句指定每天自动在23点10分执行对数据库的备份,第2条语句指定每天自动在23点半启动ftp,将备份文件传输到备份主机(备份主机为符合语句中指定IP地址的主机)。

Oracle文件只能在Oracle用户名下用“crontab -e”命令来编辑。编辑完成后,可以在用“crontab-l”命令来查看crontab文件内容,同时在/var/spool/cron/crontabs目录下查看是否增加了一个Oracle文件。

至此,本地主机可以每天定时备份数据库,并定时把备份数据传到备份主机。这样,较好地实现了Oracle数据异地自动备份,本地主机如果有什么故障,数据有了可靠备份,同时,在一定程度上也减轻了系统管理人员烦琐、重复的备份工作。

(责任编辑 火凤凰 sunsj@51cto.com QQ:34067741 TEL:(010)68476636-8007)

原文转自:www.ltesting.net

篇5:备份PostgreSQL和MySQL数据库数据库

无论是My SQL 还是PostgreSQL 数据库 ,如果你不能每天对其进行备份的话,那么应该每周对这些数据库进行备份操作一次,对许多企业来说,数据库信息代表着网站内容和其它重要的数据,因此,保持数据备份是非常重要的操作。 庆幸的是, MySQL 和PostgreSQL都提

无论是MySQL还是PostgreSQL数据库,如果你不能每天对其进行备份的话,那么应该每周对这些数据库进行备份操作一次。对许多企业来说,数据库信息代表着网站内容和其它重要的数据,因此,保持数据备份是非常重要的操作。

庆幸的是,MySQL和PostgreSQL都提供将数据库转化成flat-text文件的工具,这样你就可以将数据库信息输入到其它系统或者将数据库备份并保留它。

为了备份一个MySQL数据,可以使用mysqldump工具。例如,为了备份一个叫data的数据库,用户可以进行如下操作:

$ mysqldump -u webuser --password=pass data >data.dump

因为通常情况下,mysqldump采用的是标准格式,你应该将这一标准格式改写成一个文件名(在本例中写成data.dump),

对于这种自动备份的方法,唯一缺陷就是必须在命令行指定密码。

为了备份一个PostgreSQL数据库,可以使用pg_dump工具。访问数据库的用户需要运行这一工具。根据PostgreSQL规定的主机访问规则,你可能不需要给数据库输入密码就可以获得该数据库的信息。操作过程如下:

$ pg_dump data >data.dump

这与mysqldump工具同样有效,但是后者不要求用户名或者密码之类的信息,因为你是作为有权限访问该数据库的用户身份来运行这一工具。

在这两种数据库备份方法中,生成的输出文件提供了重新创建整个数据库的操作说明。因此,这一输出文件包含了数据和表格结构,这正是你创建数据库所必要的信息。

通过以上两类命令,你还可以使用另外一些命令行获取想保存的数据。对于这两类命令,你可以登录网站主页与阅读所有操作信息,并自定义你的数据库备份操作。

原文转自:www.ltesting.net

篇6:备份InformixOnline数据库三法数据库

Informix-Online 数据库 因其具有高 性能 、高 可靠性 、支持数据完整性定义/检查等特性而得到广泛应用,对于使用中的数据库,数据备份的 安全 可靠性便成为人们关注的焦点。根据多年的学习和经验,笔者对Informix-Online数据库常用的三种数据备份方式加以归

Informix-Online数据库因其具有高性能、高可靠性、支持数据完整性定义/检查等特性而得到广泛应用。对于使用中的数据库,数据备份的安全可靠性便成为人们关注的焦点。根据多年的学习和经验,笔者对Informix-Online数据库常用的三种数据备份方式加以归纳和比较。本文所讲备份大多是备份到磁带上的热备份方法。

一.使用ontape工具进行数据备份

1.ontape工具的功能

ontape工具具有如下功能:备份和恢复Online数据、备份和恢复逻辑日志、改变数据库日志状态等(本文着重介绍数据备份功能)。

2.执行ontape备份数据的语法

ontape备份语法为:

ontape-s-L备份级别(0、1、2)

在online处于联机或静止方式时,Informix用户或具有DBA权限的用户可以通过执行上面的命令进行备份。根据备份方案安排进行0级、1级、2级备份。0级备份是对整个数据库的所有数据进行完整备份;1级备份是只对0级备份以后修改过的数据进行备份;2级备份只是对1级备份以后修改过的数据进行备份。

3.使用ontape工具进行数据备份需要注意的问题

1)在执行ontape备份前要对Onconfig文件中的TAPEDEV、TAPEBLK、TAPESIZE参数进行正确的设置。

2)为了缩短数据恢复时间,应以进行0级为主,尽量减少1级和2级备份。对银行等重要部门数据,应每天进行0级备份。

3)如果需要将ontape备份的数据恢复到另一台服务器上时,要求两台服务器机型、操作系统、Onconfig配置文件及非临时分配的Dbspace磁盘空间数量和大小必须一致,否则数据不能正常恢复。

4)必须保证有足够可用的逻辑日志文件。如果剩余的逻辑日志空间小于单个逻辑日志的50%,Informix-online将拒绝执行备份操作。必须先备份已使用过的逻辑日志,然后才能进行数据备份。

5)保留Onconfig文件副本。在进行0级备份后,应备份Onconfig文件,因为在恢复0级备份时需要读Onconfig文件信息,如果online配置被修改,数据恢复将失败,如果恢复此0级备份,必须恢复当时的配置。

6)备份可以在online联机或静止方式下进行,在备份过程中不能改变online运行方式,否则备份会被中断。

7)不要使用后台方式执行备份命令(UNIX下的&&),因为备份采用交互方式进行。

二.使用dbexport命令进行数据备份

1.dbexport命令简介

dbexport命令以ASCII码格式将数据写到文件或备份介质上(如磁带)。dbexport卸出的文件包括数据库模式文件和数据文件。

2.dbexport命令语法如下

dbexport[-X][-c][-q][-d][-ss][{-o-t-b-s[-f]}]

以上命令中参数的意义如下:

中包括的内容为必选项,[]中的内容为可选项。

-c:指示如果没有错误,则输出全部信息。

-q:在标准输出设备上不显示错误信息、警告和所生成的SQL数据定义语句。

-d:仅输出blob描述符,不输出blob数据。

-ss:在模式文件中输出特定于服务器的用于创建数据库和表的信息,比如:初始的extent和附加的extent的大小、上锁方式、表所驻留的dbspace等信息,

-o:指定数据输出文件的磁盘目录。

-t:指定数据输出文件的备份介质名称。

-b:指定备份介质块大小。

-s:指定备份介质的最大存储量。

-f:用于指定存储在备份介质上的模式文件名。

database:指定备份的数据库名称。

使用dbexport功能及需注意的问题

1)执行dbexport命令必须是Informix用户或具有DBA访问权限的用户;

2)用dbexport备份的数据必须用dbimport命令恢复;

3)用户可以通过编辑模式文件来改变dbimport生成的数据库,如改变数据库名称或相关的表信息;

4)dbexport以独占方式(exclusivemode)占用数据库,备份期间其他用户不能对数据库进行查询和修改及插入操作;

5)模式文件不保留数据库的日志文件,用户使用dbimport命令建立数据库时必须为新建数据库选择一种日志方式(ANSI、buffered、nobuffered类型);

6)用户可以使用dbexport/dbimport命令,将Informix-online和Informix-SE下的数据进行相互转换;也可以将数据在Informix-online的不同版本之间转换,这种转换对数据库服务器的结构和online的配置没有特别要求;

7)使用dbexport/dbimport命令备份/恢复数据,可以起到消除数据分配空间碎块的作用,提高数据库整体运行效率。

三.使用Onunload命令进行数据备份

1.Onunload命令简介

Onunload命令以页为单位,使用二进制形式卸出数据,备份效率比dbexport高。

2.Onunload命令的语法

Onunload[-l][-t][-b][-s][:[owner>.>

以上参数代表的意义如下:

中包括的内容为必选项,[]中的内容为可选项

-l:指示onunload分别从配置参数TAPEDEV、TAPEBLK和TAPESIZE中读入磁带设备、块大小和备份设备容量值

-t:指定备份设备名

-b:指定备份设备的块大小

-s:指定备份设备的存储容量

database:指定要备份的数据库

owner:指定表的属主

table:指定要卸出的表

使用onunload需要注意的问题

1)onunload备份的数据必须用onload命令进行恢复;

2)onunload/onload不能实现不同版本的online之间的数据转移;

3)onunload/onload是以磁盘页大小为单位存储的二进制数据,卸出和接受数据的计算机必须具有相同的磁盘页大小;

4)只能将onunload卸出的数据装入online管理的数据库或表;

5)用户必须具有DBA访问权限,才能执行onunload命令;

6)onunload不保留初始表上定义的访问特权;

7)onunload不保留初始表上定义的同义词。

以上三种数据备份方式各有特点,ontape备份对online参数配置前后一致性要求较高,但数据备份和恢复操作简单,备份和恢复速度较快;onunload备份以页为单位以二进制形式进行备份效率较高,数据恢复时只要计算机磁盘页大小一致即可;用dbexport所做的备份可以实现不同版本、不同Informix产品之间的数据转换,数据转移灵活方便。

为保证数据能够安全恢复,数据备份至少应该选择两种方式。通过对Informix-Online数据库三种常用备份方法分析比较与归纳,用户可以根据实际情况选择适合自己需要的备份方式,来保证数据的安全恢复与转移

原文转自:www.ltesting.net

篇7:自动备份Oracle数据库数据库

相信为数不少的系统管理员每天都在做着同一样的工作――对数据进行备份,一旦哪一天疏忽了,而这一天系统又恰恰发生了故障,需要进行数据恢复,那么此时就无能为力了。假如每天设定一个固定的时间,系统自动进行备份,那该多好啊!下面笔者结合实践经验,谈一

相信为数不少的系统管理员每天都在做着同一样的工作――对数据进行备份。一旦哪一天疏忽了,而这一天系统又恰恰发生了故障,需要进行数据恢复,那么此时就无能为力了。假如每天设定一个固定的时间,系统自动进行备份,那该多好啊!下面笔者结合实践经验,谈一谈UNIX环境下Oracle数据库的自动备份,以起到抛砖引玉的作用。

我们计划让数据库在晚上23点做export导出备份,在凌晨2点将备份文件拷贝到磁带上,在凌晨4点将备份文件拷贝到另一台UNIX机器上,为此我们可进行如下操作:

一、导出数据库

export命令将数据库中的数据备份成一个二进制文件,它通常有三种模式:用户模式、表模式和整个数据库模式。本文拟采用用户模式,备份之前,应先建立一个备份目录,以容纳备份文件,比如可建一个/backup目录。接着我们可在UNIX的Oracle目录下(也可以是其它目录)分别建立两个文件ora―backup,tar―backup。需要说明的是,前一个文件需要对Oracle的参数进行初始化,为了方便起见,我们不妨将初始化命令放到一个文件中(文件名姑且定为ora―env),再由第一个文件调用它。

1. ora―env文件对Oracle的参数进行初始化,其内容如下:

ORACLE―HOME=$ORACLE―HOME;export ORACLE―HOMEORACLE―SID=ora73;export ORACLE―SIDORACLE―TERM=sun;export ORACLE―TERMLD―LIBRARY―PATH=$ORACLE―HOME/lib;export LD―LIBRARY―PATHORA―NLS32=$ORACLE―HOME/ocommon/nls/admin/data;export ORA―NLSPATH=.:/usr/clearcase/” target=“_blank” >ccs/bin:/usr/ucb:$ORACLE―HOME/bin:$PATH;export PATHDISPLAY=host1:0;export DISPLAYNLS―LANG=american―america.zhs16cgb231280;export NLS―LANG
2. ora―backup文件对数据库做export导出,导出的文件名可以任意定,本文定为字母“xx”加当天日期,即假如当天日期是12月10号,则导出的文件名为“xx1210.dmp ”,以区别于其它日期的备份文件。

ora―backup文件内容:

./oracle/ora―env#初始化Oracle数据库rq=′date +″%m%d″ ′#把当天日期赋予变量rqrm /backup/?# 清空 /backup目录exp test/test file=/backup/xx$rq.dmplog=/backup/xx$rq.log
本命令用于在$提示符下,导出test用户的数据(其口令亦为test),导出文件及日志均放在/backup目录下。

二、磁带备份

tar―backup文件将用export命令导出的数据文件拷贝到磁带上。tar―backup文件内容:

tar rvf /dev/rmt/0n/backup/?

本命令可将/backup目录下当天产生的文件备份到磁带上。本文件中,tar命令使用了三个参数,其中r选项表示向磁带上拷入文件而不破坏磁带原来内容,v选项表示在拷贝过程中显示文件信息,f选项后面加上磁带设备名,指定文件向何处拷贝,n选项表示磁带机不倒带,

/dev/rmt/0表示UNIX主机第一个磁带驱动器,同理,/dev/rmt/1则表示 UNIX主机第二个磁带驱动器,依此类推。

ora―env、ora―backup、tar―backup文件编写完成后,分别使用下述命令:

chmod 755 ora―envchmod 755 ora―backupchmod 755 tar―backup
这样,三个文件就都变成了可执行文件。

三、异地备份

我们知道,通常可用FTP命令在两台主机间传输数据,但一般是通过交互方式实现的,即需要手工输入目标主机的IP地址、用户名、口令等。显然,这不符合自动备份的要求。所幸的是,我们可以通过编写一个.netrc的文件来达到目标。这一文件必须命名为 .netrc,且必须存放在启动FTP命令的机器上的用户注册目录中,该文件的权限应禁止组内或其它用户进行读访问。这样,当用户使用FTP命令的时候,系统将会在该用户的注册目录中寻找.netrc文件,如果能够寻找到,将会首先执行该文件,否则,会交互式地提示用户输入用户名、口令等。

在使用FTP命令之前,应先在另一台作备份用的UNIX机器上建一目录,以容纳备份文件,本文建的目录是/pub 。需要指出的是,为了加快备份速度,两台主机之间的传输速率应尽可能的高,最好位于同一局域网上。

.netrc文件内容如下:machine host2# host2为作备份用的主机名login oracle#oracle为备份主机上的一个用户password oracle#oracle用户的口令为oraclemacdef init#定义一个名为init的宏,它将在自动注册进程的最后被执行bin#文件的传输方式设为二进制lcd /backup# 进入本地工作目录/backupcd /pub# 进入备份主机目录/pubmput ?# 将/backup目录下的所有文件传输至备份主机bye#退出FTP会话进程.netrc文件编写完成后,使用下述命令:chmod 600 .netrc这样,.netrc文件就只能被该用户所访问。
四、启动备份进程

Cron是一个永久进程,它由/etc/rc.local启动执行。Cron检查/var/spool/cron/c rontabs/?目录中的文件,找到所要执行的任务和执行任务的时间。Crontab文件的每一行由六个域(minutes、hours、day of month、month、day of week、command)组成,域之间用空格或Tab分开,其中:

minutes:分钟域,值的范围是0到59 hours:小时域,值的范围是0到23 day of month:日期,值的范围是1到31 month:月份,值的范围是1到12 day of week:星期,值的范围是0到6,星期日值为0 command:所要运行的命令
如果一个域是?,表明命令可以在该域所有可能的取值范围内执行。如果一个域是由连字符隔开的两个数字,表明命令可以在两个数字之间的范围内执行(包括两个数字本身)。如果一个域是由逗号隔开的一系列值组成的,表明命令可以在这些值组成的范围内执行。如果日期域和星期域都有值,则这两个域都有效。

现在,我们编写一个文件,用以启动自动备份进程。值得注意的是,该文件只能在 Oracle用户名下用crontab -e 命令来编辑,否则将不会被定时执行,文件名定为Orac le,文件将放在/var/spool/cron/crontabs 目录下。编辑完成后,可以在Oracle的$提示符下,用crontab -l命令来查看。

Oracle文件内容:

0 23 ? ? ? /oracle/ora―backup# 每天23点对数据库执行备份0 2 ? ? ? /oracle/tar―backup# 每天2点将文件备份到磁带上0 4 ? ? ? ftp -i host2# 每天4点将文件备份到另一台主机上
经过以上的操作后,系统每天晚上将自动产生一个备份,并且自动将备份文件分别拷贝到磁带上和另一台主机上。系统管理员需要做的是,隔几天换一盘磁带(更换磁带的周期取决于备份文件的大小和磁带的容量)和清理备份目录。这样,他们就可以从备份数据的繁琐中解脱出来,去做其它更有意义的工作。而数据库既实现了磁带备份,又实现了异地备份,相应的安全性也大大提高了。 (完)

原文转自:www.ltesting.net

篇8:备份向导数据库教程

我们知道备份和恢复数据库是DBA 的主要工作,但是如果您是一名DBA 新手,我们建议您在没有搞清楚到底如何进行之前,不妨使用备份向导,

备份向导数据库教程

。它能告诉您在备份时应该干些什么使用备份向导的步骤如下:

(1) 启动SQL Server Enterprise Manager, 单击要登录的服务器,此时在主菜单上选择Tools, 在弹出菜单上选择Wizards 后弹出Select Wizard 对话框,如图15-7 所示。

图15-7 Select Wizard 对话框

(2) 单击Management 左边的“+” 标志,然后双击Backup Wizard, 打开Welcometo Create Database Backup Wizard 对话框,如图15-8 所示。

(3) 单击“下一步”按钮,打开Select Database to Backup 对话框,选择要进行备份的数据库,如图15-9 所示。

(4) 单击“下一步”按钮,打开Type Name and Description for Backup 对话框,

为备份输入名字和描述。如图15-10 所示。

(5) 单击“下一步”按钮,打开Select Type of Backup 对话框,选择您所进行的备份的类型,如图15-11 所示。

(6) 单击“下一步”按钮,打开Select Backup Destination and Action 对话框, 选择备份时使用的备份设备,并决定是覆盖原设备还是添加到原设备当中。如图15-12 所示。

图15-11 Select Type of Backup 对话框

(7) 单击“下一步”按钮,打开Backup verification and scheduling 对话框,选择checking media set 表示检查备份介质以确信是否到期而可以被覆盖,如图15-13 所示。

(8) 单击“下一步”按钮,打开Completing the Create Backup wizard 对话框,如图15-14。

(9) 单击“完成”,完成数据库备份。

篇9:Linux定时备份数据库

一、用命令实现备份

首页进入mysql的bin目录

1、备份数据

#mysqldump -uusername -ppassword discuz >discuz_-04-01.sql

这样就把discuz数据库所有的表结构和数据备份到discuz_2010-04-01.sql里了,

如果数据量大会占用很大空间,这时可以利用gzip压缩数据,

命令如下:

#mysqldump -uusername -ppassword discuz | gzip >discuz_2010-04-01.sql.gz

系统崩溃,重建系统时,可以这样恢复数据:

#mysql -uusername -ppassword discuz < discuz_2010-04-01.sql

从压缩文件直接恢复:

#gzip < discuz_2010-04-01.sql.gz | mysql -uusername -ppassword discuz

二、利用crontab,系统每天定时备份mysql数据库

1、创建保存备份文件的路径/mysqldata

#mkdir /mysqldata

2、创建/usr/sbin/bakmysql文件

输入以下内容:

mysqldump -umysql -p51uptry uptry | gzip >/mysqldata/uptry`date +%Y-%m-%d_%H%M%S`.sql.gz

3、修改文件属性,使其可以执行

#chmod +x /usr/sbin/bakmysql

4、修改/etc/crontab

在下面添加

01 3 * * * root /usr/sbin/bakmysql

表示每天3点钟执行备份 crontab使用说明

5、重新启动crond

#/etc/rc.d/init.d/crond restart

完成,

Linux定时备份数据库

三、数据的恢复

首页进入mysql的bin目录

创建数据库

#mysqladmin create discuz

恢复数据

#mysql discuz < /mysqldata/discuz_2010-04-01.sql

篇10:WordPress 数据库自动备份

以前才开始用WordPress的时候,就听说了大名鼎鼎的WordPress Database Backup,只是虚拟主机的邮件功能一直都不正常,无法使用,为此自己不得不定期自己用PhpMyadmin进行备份,前段时间邮箱收到了评论邮件,才发现主机的邮件功能已经正常,于是去下载了这个插件安装,这几天下来觉得非常不多,推荐没有安装的朋友们都装上吧,再也不操心数据库备份了。

下载地址:WordPress Database Backup

下载后上传到服务器,进入后台启用该插件,然后在“管理”–“Backup”中进行设置即可,我是设置为每天发送一次数据库到邮箱,

如果出现错误提示,可能是你的插件目录没有写入权限,按照出错提示,新建一个要求的文件夹到wp-content(形如backup-b4efd这种),然后利用FTP客户端软件将该文件夹的属性设置为777。

扩展:

Unix/Linux平台文件有三个属性:读、写、执行,三者的允许数字分别是1、2、4,所以对应文件的最高权限是7。

一个文件可以被同组用户、不同组用户、文件所有者等三类不同的人使用,所以分别对应三个属性值。

777则是任何人都可以进行读、写、执行 操作。

来自:www.imxl.net/tattleskill/wordpress-database-backup/

【Informix数据备份技巧数据库】相关文章:

1.有备无患:OUTLOOK数据备份篇

2.有备无患:Foxmail数据备份篇

3.postgres 数据备份与恢复

4.Linux下使用crontab自动备份数据库

5.数据查询SELECT语句数据库教程

6.wordpress数据库备份及换空间详细教程

7.Ubuntu Server下MySql数据库备份脚本代码

8.log备份的入侵技巧总结

9.Linux系统定时备份数据库和网站例子linux操作系统

10.windows下计划任务自动备份mysql数据库方法Windows服务器操作系统

下载word文档
《Informix数据备份技巧数据库.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度: 评级1星 评级2星 评级3星 评级4星 评级5星
点击下载文档

文档为doc格式

  • 返回顶部