SVNサービスバックアップ操作手順の共有

SVNサービスバックアップ操作手順の共有

SVN サービスのバックアップ手順

1. ソースサーバーとターゲットサーバーを準備する

  • ソースサーバー: 192.168.1.250
  • 対象サーバー: 192.168.1.251 root/rootroot

2. ターゲットサーバー(251)にSVNサーバーをインストールします。スクリプトは次のとおりです。

yum install subversion

3. 新しいリポジトリを作成します (svnadmin create path)。スクリプトは次のとおりです。

svnadmin create ~/svn-storage-bak

4. svn-storage-bak ウェアハウスのルート ディレクトリに入ります。スクリプトは次のとおりです。

cd ~/svn-storage-bak

5. hooks/pre-revprop-change.tmpl を hooks/pre-revprop-change にコピーします。スクリプトは次のとおりです。

cp hooks/pre-revprop-change.tmpl hooks/pre-revprop-change

6. 上記の pre-revprop-change スクリプトに実行権限を追加します。スクリプトは次のとおりです。

chmod u+x hooks/pre-revprop-change

7. pre-revprop-change スクリプトを編集し、最後の行 exit 1 を exit 0 に変更して保存します。操作は以下のとおりです。

vim hooks/pre-revprop-change

8. svnsync を使用して、ターゲット ウェアハウスを指す新しいウェアハウス同期を設定します (svnsync init file:////現在のターゲット svn ウェアハウス パス、ソース ウェアハウス URL)。スクリプトは次のとおりです。

svnsync init file:////root/svn-storage-bak svn://192.168.1.250/

9. 次に、現在のサーバーのユーザー名とパスワードを入力します。 ソースSVNサーバーのユーザー名とパスワード

10. SVN 同期バックアップを実行します。スクリプトは次のとおりです。

svnsync sync file:///home/usrname/svn-storage-bak

次にバックアップを開始します。

11. 手順 10 の同期スクリプトをスクリプト ファイルに記述し、ログ出力をリダイレクトして、後で同期が成功したかどうかを確認しやすくします。 次に、crontab のスケジュールされたタスクに設定します。 毎日午前1時に実行されます。

(同期スクリプトを crontab に直接記述するようになりました。定期的に実行するには、別のスクリプト ファイルを作成することをお勧めします。)

私のスケジュールタスクの書き方(参考):

12. SVN サービスを開始します。具体的なスクリプトは次のとおりです。

svnserve -d -r /root/svn-storage-bak

13. 同期が成功したかどうかをテストする

TortoiseSVNクライアントまたはブラウザを使用して、バックアップ SVN サーバー アドレスにアクセスします。リソースが正常にバックアップされているかどうかを確認します。

たとえば、ターゲット サーバーでテストを実行するには 219 を使用します。

要約する

以上がこの記事の全内容です。この記事の内容が皆様の勉強や仕事に何らかの参考学習価値をもたらすことを願います。123WORDPRESS.COM をご愛顧いただき、誠にありがとうございます。これについてもっと知りたい場合は、次のリンクをご覧ください。

以下もご興味があるかもしれません:
  • CentOS7 のシステム サービスに Nginx を追加する方法
  • Centos7のホスト名を変更する3つの方法
  • SVN で Maven プロジェクトをアップロードしてチェックアウトする方法
  • LinuxでSVNサーバーを構築する方法
  • SVN エラー: 変更の更新エラー: svn: E155037 解決策
  • Android Studio プロジェクトと SVN の関連付けを解除する方法
  • IntelliJ IDEA で SVN ブランチを使用する方法の簡単な紹介
  • IntelliJ IDEA の SVN が MAC 上でパスワードを保存できない問題の解決方法
  • Webstorm2017にSVNプラグインをインストールする方法
  • Alibaba Cloud Centos7のインストールとSVNの設定

<<:  Ubuntuでネットワークルーティングテーブルを表示する方法

>>:  mysql のインデックスと FROM_UNIXTIME に関する問題

推薦する

MySQL マスタースレーブレプリケーションと読み取り書き込み分離の詳細な説明

記事マインドマップマスター/スレーブ レプリケーションと読み取り/書き込み分離を使用する理由は何です...

CSS3のボックスサイズプロパティの興味深いボックスモデルについての簡単な説明

誰もがボックス モデルの構成を、内側から外側まで、コンテンツ、パディング、境界線、マージンについて知...

JVMシリーズのメモリモデルの詳細な説明

目次1. メモリモデルとランタイムデータ領域2. マインドマップと凡例3. オブジェクトはJVMから...

JavaScript オブジェクト指向の実践の詳細説明: カプセル化とオブジェクトのドラッグ

目次概要1. DOM要素をアニメーション化する方法2. 現在のブラウザでサポートされている変換互換の...

Dockerを使用してシンプルなJava開発およびコンパイル環境を構築する方法の詳細な説明

Java 言語には多くのバージョンがあります。一般的に使用されている Java 8 に加えて、一部の...

HTTP ヘッダー情報の解釈と分析 (詳細概要)

HTTP ヘッダーの説明1. Accept: Web サーバーに受け入れるメディア タイプを通知しま...

JavaScript キャンバス テトリス ゲーム

テトリスは非常に古典的な小さなゲームで、私もそれを書いてみました。しかし、できるだけ簡潔で論理的なコ...

MySQL でテーブル データを削除した後もディスク領域がまだ占有されているのはなぜですか?

目次1.MySQLデータ構造2. テーブルファイルのサイズは変更されておらず、MySQLの設計に関連...

MySQL解凍版のインストール手順の詳しい説明

1. 公式サイトにアクセスします: D:\mysql-5.7.21-winx64\bin をダウンロ...

Java は Apache.POI を使用して HSSFWorkbook を Excel にエクスポートします

Apache.POI の HSSFWorkbook を使用して Excel にエクスポートします。具...

WeChatアプレットがシンプルな計算機機能を実装

この記事では、WeChatアプレットの計算機機能を実装するための具体的なコードを参考までに紹介します...

Zabbix Agent2を使用してOracleデータベースを監視する方法

概要zabbix バージョン 5.0 以降では、zabbix-agent2 という新しい機能が追加さ...

MySQL 基本チュートリアル: DML ステートメントの詳細な説明

目次DMLステートメント1. レコードを挿入する2. 記録を更新する3. シンプルなクエリレコード4...

jsネイティブ構文プロトタイプ、__proto__、コンストラクタの徹底的な理解

目次1 はじめに2 前提条件2.1 データ型2.2 それが自身のプロパティであるかどうかを判断する ...