Unix系统Informix数据备份技巧

Jun 07, 2016 pm 05:53 PM

笔者在单位使用Unix Openserver 5.05 操作系统和Informix 7.3 数据库管理系统。对如何做好Unix 系统Informix数据的备份,笔者在日常工作中积累了一些技巧,现介绍给大家。 一、Informix数据备份命令 1.Ontape命令:该命令可以在线进行数据备份,提供0、1、2

笔者在单位使用Unix Openserver 5.05 操作系统和Informix 7.3 管理系统。对如何做好Unix 系统Informix数据的备份,笔者在日常工作中积累了一些技巧,现介绍给大家。

一、Informix数据备份命令
 1.Ontape命令:该命令可以在线进行数据备份,提供0、1、2级三种不同级别的备份方式,其0级备份是对数据空间的完整备份(包括数据库逻辑日志),其备份量较大,在此基础上的1、2级备份,是增量备份,备份量较小。但在数据恢复时,如果0级备份出了问题,则不能进行数据恢复。备份的数据以专用的格式存贮,对用户“不可见”,给用户一种不踏实的感觉。

2.Dbexport命令:该命令是对数据库的完整备份(包括数据结构)。备份的数据格式是文本文件,用户可以用VI进行编辑,进行部份数据恢复。但不能进行在线备份,需要使数据库离线。同时要对多个数据库进行备份时,要用shell程序实现。

3.Unload命令:该命令对数据库中的一张表进行备份。其优点是方便灵活,备份的数据格式是文本文件,用户可以用VI进行编辑,进行部分数据恢复。能实现在线数据备份。其缺点是如要对数据库进行完整备份,要进行编程。

通过以上介绍可知,Ontape命令面向数据空间、dbexport命令面向数据库、unload命令面向数据表,三种命令各有其长处,也有其不足。综合考虑,笔者认为采用ontape命令进行周备份(0级备份),用unload命令进行日备份比较合理,方便灵活。

二、用unload命令备份Informix-4gl
  用unload命令备份Informix-4gl 的源程序如下:

Define database_name Char(20)
Main
Define tabname Char(18)
Define tmpstr Char(100)
Database database_name
Let database_name = Arg_Val(1)
Declare cur_unload0 Cursor For
Select @tabname From systables
Where @tabid 〉=100 And @tabtype = ="T"
ForEach cur_unload0 Into tabname
Display "Unloading ", tabname Clipped, "..."
Let tmpstr = "echo 'Unload To ", database_name Clipped, "/", tabname Clipped, ".unl Select From ", tabname Clipped,"' | isql ", database_name Clipped, " -"
Run tmpstr
End ForEach
Close Database
End Main

程序中数据库名从命令行中获得,对数据库中的每一张表进行循环,转存成相应表名的文本文件。

三、对多个数据库操作的Shell程序
以上程序操作的对象为单个数据库,如要对 Informix - 4gl 中的每一个数据库进行备份,则可以用一Shell程序执行。以下是相应的Shell程序,名为 auto_backup。
YYMMDD=`date '+%y%m%d'`
FILENAME=b$YYMMDD\.tar
unload0 motor
unload0 idc
……
tar -fcv $FILENAME 
compress $FILENAME
省略号处可加上若干数据库。为了节省空间,对备份好的数据打包、压缩,生成一个文件。

四、将备份好的数据传送到数据备份机
  对上述备份好的数据,需要将它异机备份或用磁带进行备份。笔者认为,设置一台专用数据备份机,并在该机上配有一光盘刻录机,可即时地将数据备份到可读写光盘上。

为了将数据从Unix 系统中传送到Windows 95或Windows 98中去,可使用FTP程序。为了使程序能自动执行,应在Unix用户中建立.netrc文件,并定义用户的FTP写目录为刻录光盘。以下是.netrc文件实例:

machine sjbf
login fq
passwd qqqqqq

该文件定义了FTP到一远程机器为sjbf,用户为fq,口令为 qqqqqq。
同时建立一文件 auto_ftp,其清单如下:
prompt off
put Z

文件auto_backup的最后加入命令:
ftp sjbf 〈 auto_ftp

五、自动定时执行备份
 为了使计算机自动执行备份程序,可使用Unix系统中的cron定时执行机制,建议让Unix系统中的Informix用户去执行。在Unix系统中,用Informix用户登录,执行crontab -e,其内容为:

30 12  /prog/auto_backup

经过以上几步,我们就做好了自动备份程序,机器每天12:30会自动执行数据备份,并将数据送到可读写光盘中去,系统管理员要做的事,就是当光盘中的数据满时,换一张可读写光盘而已。这样数据备份,相对来讲比较安全可靠。如果有一远程机器可以FTP,则可以非常方便地进行远程异机备份,极大提高数据备份的可靠性。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

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

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

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

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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

INNODBフルテキスト検索機能を説明します。 INNODBフルテキスト検索機能を説明します。 Apr 02, 2025 pm 06:09 PM

INNODBのフルテキスト検索機能は非常に強力であり、データベースクエリの効率と大量のテキストデータを処理する能力を大幅に改善できます。 1)INNODBは、倒立インデックスを介してフルテキスト検索を実装し、基本的および高度な検索クエリをサポートします。 2)一致を使用してキーワードを使用して、ブールモードとフレーズ検索を検索、サポートします。 3)最適化方法には、単語セグメンテーションテクノロジーの使用、インデックスの定期的な再構築、およびパフォーマンスと精度を改善するためのキャッシュサイズの調整が含まれます。

Alter Tableステートメントを使用してMySQLのテーブルをどのように変更しますか? Alter Tableステートメントを使用してMySQLのテーブルをどのように変更しますか? Mar 19, 2025 pm 03:51 PM

この記事では、MySQLのAlter Tableステートメントを使用して、列の追加/ドロップ、テーブル/列の名前の変更、列データ型の変更など、テーブルを変更することについて説明します。

MySQLでインデックスを使用するよりも、フルテーブルスキャンがいつ速くなるのでしょうか? MySQLでインデックスを使用するよりも、フルテーブルスキャンがいつ速くなるのでしょうか? Apr 09, 2025 am 12:05 AM

完全なテーブルスキャンは、MySQLでインデックスを使用するよりも速い場合があります。特定のケースには以下が含まれます。1)データボリュームは小さい。 2)クエリが大量のデータを返すとき。 3)インデックス列が高度に選択的でない場合。 4)複雑なクエリの場合。クエリプランを分析し、インデックスを最適化し、オーバーインデックスを回避し、テーブルを定期的にメンテナンスすることにより、実際のアプリケーションで最良の選択をすることができます。

Windows 7にMySQLをインストールできますか? Windows 7にMySQLをインストールできますか? Apr 08, 2025 pm 03:21 PM

はい、MySQLはWindows 7にインストールできます。MicrosoftはWindows 7のサポートを停止しましたが、MySQLは引き続き互換性があります。ただし、インストールプロセス中に次のポイントに注意する必要があります。WindowsのMySQLインストーラーをダウンロードしてください。 MySQL(コミュニティまたはエンタープライズ)の適切なバージョンを選択します。インストールプロセス中に適切なインストールディレクトリと文字セットを選択します。ルートユーザーパスワードを設定し、適切に保ちます。テストのためにデータベースに接続します。 Windows 7の互換性とセキュリティの問題に注意してください。サポートされているオペレーティングシステムにアップグレードすることをお勧めします。

MySQL接続用のSSL/TLS暗号化を構成するにはどうすればよいですか? MySQL接続用のSSL/TLS暗号化を構成するにはどうすればよいですか? Mar 18, 2025 pm 12:01 PM

記事では、証明書の生成と検証を含むMySQL用のSSL/TLS暗号化の構成について説明します。主な問題は、セルフ署名証明書のセキュリティへの影響を使用することです。[文字カウント:159]

人気のあるMySQL GUIツール(MySQL Workbench、PhpMyAdminなど)は何ですか? 人気のあるMySQL GUIツール(MySQL Workbench、PhpMyAdminなど)は何ですか? Mar 21, 2025 pm 06:28 PM

記事では、MySQLワークベンチやPHPMyAdminなどの人気のあるMySQL GUIツールについて説明し、初心者と上級ユーザーの機能と適合性を比較します。[159文字]

INNODBのクラスターインデックスと非クラスターインデックス(セカンダリインデックス)の違い。 INNODBのクラスターインデックスと非クラスターインデックス(セカンダリインデックス)の違い。 Apr 02, 2025 pm 06:25 PM

クラスター化されたインデックスと非クラスター化されたインデックスの違いは次のとおりです。1。クラスター化されたインデックスは、インデックス構造にデータを保存します。これは、プライマリキーと範囲でクエリするのに適しています。 2.非クラスター化されたインデックスストアは、インデックスキー値とデータの行へのポインターであり、非プリマリーキー列クエリに適しています。

MySQLの大きなデータセットをどのように処理しますか? MySQLの大きなデータセットをどのように処理しますか? Mar 21, 2025 pm 12:15 PM

記事では、MySQLで大規模なデータセットを処理するための戦略について説明します。これには、パーティション化、シャード、インデックス作成、クエリ最適化などがあります。

See all articles