MySQL データベースをバックアップするためのツールは多数あります。過去 2 日間で、C# を使用して MYSQL の mysqldump コマンドを呼び出し、MySQL データベースのバックアップとリカバリを完了する小さなツールを作成しました。 まず、mysqldump コマンドを使用して MySQL データベースをバックアップする方法について説明します。 mysqldump -hホスト名 -uユーザー名 -pパスワード データベース名 > バックアップファイル.sql MySQLデータベースを直接圧縮してバックアップする mysqldump -hホスト名 -uユーザー名 -pパスワード データベース名 | gzip > バックアップファイル.sql.gz MySQLデータベースのテーブルをバックアップする mysqldump -hhostname -uusername -ppassword データベース名 specific_table1 specific_table2 > バックアップファイル.sql 複数のMySQLデータベースを同時にバックアップする mysqldump -hhostname -uusername -ppassword –databases databasename1 databasename2 databasename3 > マルチバックアップファイル.sql データベース構造のみをバックアップする mysqldump –no-data –databases データベース名1 データベース名2 データベース名3 > 構造バックアップファイル.sql サーバー上のすべてのデータベースをバックアップする mysqldump –すべてのデータベース > allbackupfile.sql MySQLデータベースを復元するコマンド mysql -hホスト名 -uユーザー名 -pパスワード データベース名 < バックアップファイル.sql 圧縮されたMySQLデータベースの復元 gunzip < バックアップファイル.sql.gz | mysql -uユーザー名 -pパスワード データベース名 データベースを新しいサーバーに転送する mysqldump -uユーザー名 -pパスワード データベース名 | mysql –host=*.*.*.* -C データベース名 C#を使用してMYSQLのバックアップとリカバリを操作することは、主にC#を使用して外部プログラムを実行することによって実現されます。 以下はC#のソースコードです /// <要約> /// データベースを特定のディレクトリにバックアップします/// </summary> /// <param name="binfolderpath">mysqldump.exe ファイルを取得するために使用される Bin フォルダー ディレクトリ</param> /// <param name="server">サーバー</param> /// <param name="user">ユーザー名</param> /// <param name="pass">パスワード</param> /// <param name="db">バックアップするデータベース名</param> /// <param name="backupfile">バックアップ先のファイル</param> /// <戻り値></戻り値> public static bool BackupDB(文字列 binfolderpath、文字列 server、文字列 character、文字列 user、文字列 pass、文字列 db、文字列 backupfile) { 文字列コマンド = 文字列.Format("mysqldump.exe --quick --host=\"{0}\" --default-character-set=\"{1}\" --lock-tables --verbose --force --port=3306 --user=\"{2}\" --password=\"{3}\" \"{4}\" -r \"{5}\"",server, character.Trim().ToLower(), user, pass, db, backupfile); StartCmd(binfolderpath + @"\", コマンド); if (File.Exists(バックアップファイル)) { true を返します。 } それ以外 { false を返します。 } } /// <要約> /// 指定されたデータベースを指定されたファイルに復元します/// </summary> /// <param name="binfolderpath">mysqldump.exe ファイルを取得するために使用される Bin フォルダー ディレクトリ</param> /// <param name="server">サーバー</param> /// <param name="user">ユーザー名</param> /// <param name="pass">パスワード</param> /// <param name="db">バックアップするデータベース名</param> /// <param name="backupfile">復元する SQL ファイル</param> /// <戻り値></戻り値> public static bool RestoreDB(文字列 binfolderpath、文字列 character、文字列 server、文字列 user、文字列 pass、文字列 db、文字列 restorefile) { 文字列コマンド = 文字列.Format("mysql.exe --host=\"{0}\" --default-character-set=\"{1}\" --port=3306 --user=\"{2}\" --password=\"{3}\" \"{4}\"<\"{5}\"", server, character.Trim().ToLower(), user, pass, db, restorefile); StartCmd(binfolderpath + @"\", コマンド); true を返します。 } データベースのバックアップとリカバリ機能は、わずか数行のコードで実装できます。 C# で MySQL コマンドライン バックアップとリカバリを実装する主な原則は、C# を使用して外部プログラムを実行することです。他の実装方法もあります。詳細については、こちらをご覧ください。 以下もご興味があるかもしれません:
|
<<: Linux ユーザー状態とカーネル状態間の通信方法の詳細な説明
>>: Nodejs でモジュール fs ファイルシステムを使用する方法
IE6 と IE7 では CSS の解釈に多くの違いがあります。今日はそのうちの 1 つである高さに...
目次イベントループブラウザ環境イベントループノード環境イベントループ6つのステージ(1)setTim...
参考までにWindowsにMySQLをインストールします。具体的な内容は次のとおりです。 1.まずM...
nginx.conf設定ファイルは次のとおりです。 ユーザー nginx; ワーカープロセス 1; ...
基本的な環境設定まずはご自身でドメイン名とサーバーを購入してくださいクラウドサーバーECSに基づいて...
js のイベント ループJavaScript はシングルスレッドなので、同じイベントで実行できるメソ...
目次文字列の長さ: 長さcharAt() charCodeAt()文字列に値が含まれているかどうかを...
1. トランザクションはACID特性を持つ原子性: トランザクションは、トランザクションによって分割...
1. VMware 15.5から新しい仮想マシンを作成する1. VMware を開き、ホームページで...
バイオニックデザインといえば、飛行機の発明、ドバイのブルジュ・アル・アラブ、平泳ぎなどを思い浮かべる...
この記事では、参考までに、シンプルなページカウントダウンを実装するためのJavaScriptの具体的...
目次序文RMの後には希望はあるのでしょうか?最前線を使ってファイルを取得するextundeleteを...
[LeetCode] 182.重複メールPerson という名前のテーブル内のすべての重複メールを...
目次導入クッキークッキーとはクッキー生成方法クッキーの適用シナリオクッキーのデメリット回避策ローカル...
よくある質問から議論を始めましょう。CSS を使用して要素の高さを [ブラウザ コンテンツ ウィンド...