Oracle数据的异地自动备份
在大型商业应用中,数据的异地容灾备份十分重要,也必不可少。笔者根据自己的实践经验,设计了一套简洁地实现异地数据自动备份的方法,可供数据库管理人员参考。文中所有的程序都经过测试,运行良好。这里模拟的异地运行环境为一主一备两套Sun Solaris系统,
在大型商业应用中,数据的异地容灾备份十分重要,也必不可少。笔者根据自己的实践经验,设计了一套简洁地实现异地数据自动备份的方法,可供管理人员参考。文中所有的程序都经过测试,运行良好。这里模拟的异地运行环境为一主一备两套Sun Solaris系统,所采用的备份方法为Oracle提供的标准备份:export。
相关命令
文中主要用到三个命令,这里先单独介绍一下:
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”命令授予它可执行权限。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









Oracle RACハードディスク新規および交換操作:ハードディスクの追加:新しいディスクの追加、ASMディスクグループの作成、クラスターへの追加、データファイルの移動。ハードディスクの交換:失敗したハードディスクを識別し、ディスクグループを閉じ、ハードディスクを交換し、ディスクグループを再開し、故障したディスクを修復し、データファイルを移動します。

Oracle Garledの問題は、通常、不適切な文字セット設定によって引き起こされます。ソリューションには、サーバー、データベース、クライアントの文字セットのチェックが含まれます。必要に応じて、サーバー、データベース、およびクライアント文字セットを設定します。 Convert関数またはdbms_lob.convert_lob関数を使用して、文字化けデータを修正します。常に文字セットを指定し、NLSパラメーターを正しく設定します。

Oracleは複数の重複排除クエリメソッドを提供します。個別のキーワードは、各列の一意の値を返します。 Group by Clauseは、結果をグループ化し、各グループの非繰り返し値を返します。一意のキーワードは、一意の行のみを含むインデックスを作成するために使用され、インデックスをクエリすると自動的に重複排除が行われます。 row_number()関数は、一意の数値を割り当て、行1のみを含む結果をフィルタリングします。min()またはmax()関数は、数値列の非繰り返し値を返します。交差する演算子は、2つの結果セットの共通値を返します(複製なし)。

Oracle Tablespaceサイズを照会するには、次の手順に従ってください。クエリを実行して、TableSpace名を決定します。DBA_TABLESPACesからTableSpace_Nameを選択します。クエリを実行してテーブルスペースのサイズをクエリします:sum(bytes)をtotal_size、sum(bytes_free)asavail_space、sum(bytes) - sum(bytes_free)as sum(bytes_free)as dba_data_files from tablespace_

Oracleクライアントを介してクラウドサーバーに接続する手順は次のとおりです。SSHキーを作成し、公開キーをクラウドサーバーにコピーします。 Oracleクライアントを構成し、クラウドサーバーの接続情報をtnsnames.oraファイルに追加します。 Oracleクライアントに新しいデータベース接続を作成し、ユーザー名、パスワード、およびDSNを入力します。 [OK]をクリックして、接続が成功していることを確認します。

Oracleデータベースは、信頼性が高く、スケーラブルで機能が豊富なリレーショナルデータベース管理システム(RDBMS)です。そのアーキテクチャは、サーバー側コンポーネント(Oracle Net)、インスタンス、共有メモリ領域(SGA)、バックグラウンドプロセス、データを保存するデータベースファイルなど、クライアントサーバーモデルに従います。基本的な概念には、表、行、列、一次キー、外部キー、インデックス、カーソルが含まれます。このデータベースは、高可用性、ビッグデータサポート、豊富な機能、強力なセキュリティ、使いやすさなどの利点で知られています。

Oracle文字セットを変更するには、以下が必要です。データベースをバックアップします。 init.oraファイルの文字設定設定を変更します。データベースを再起動します。既存のテーブルと列を変更して、新しい文字セットを使用します。データをリロードします。データベースリンク(オプション)を変更します。

ストアドプロシージャは、データベースに保存できるSQLステートメントのセットであり、別のユニットと繰り返し呼ぶことができます。パラメーター(in、out、inout)を受け入れ、コードの再利用、セキュリティ、パフォーマンス、モジュール性の利点を提供できます。例:ストアドプロシージャを作成して、2つの数値の合計を計算してOUTパラメーターに保存します。
