ネットワーク経由でMSSQLデータベースをクライアントローカルディスクにバックアップする

ネットワーク経由でMSSQLデータベースをクライアントローカルディスクにバックアップする

MSSQLLinuxでサーバーをバックアップしようとしています。tsql(freetdsプロジェクトで)を使用してサーバーに接続でき、backup Databaseコマンドを使用してサーバーのデータベースをバックアップすることもできますが、サーバーへの接続に使用するMSSQLコンピューターにこのバックアップをダウンロードすることはできません。

これがサーバーの場合は、mySQLデータベースバックアップのダウンロードを使用できますmysqldump。 LinuxのMSSQLサーバーに対して同様の作業を実行できますか?

答え1

sqlcmdユーティリティを含むmssql-toolsパッケージをLinuxコンピュータにインストールします。 Linuxディストリビューション用のパッケージマネージャを使用してインストールできます。

mssql-toolsをインストールしたら、次のコマンドを使用してバックアップを実行できます。

sqlcmd -S <server_name> -U <username> -P <password> -Q "BACKUP DATABASE <database_name> TO DISK='<backup_file_path>'"

<server_name>をSQL Serverインスタンスの名前またはIPアドレスとサーバーにアクセスするための適切な資格情報に置き換え、<database_name>をバックアップするデータベース名、<backup_file_path>を目的の場所とファイル名に置き換えます。バックアップ文書の場合。

たとえば、

sqlcmd -S localhost -U sa -P mypassword -Q "BACKUP DATABASE MyDatabase TO DISK='/backup/MyDatabase.bak'"

このコマンドは、データベースのバックアップを実行して実行します。作成されたバックアップファイルは指定された場所に保存されます。

特定のSQL Serverの構成と認証方法によっては、コマンドを調整する必要があります。また、sqlcmdコマンドを実行しているユーザーにバックアップ操作を実行するための適切な権限があることを確認してください。

バックアップファイルが作成されたら、ネットワーク設定やデフォルト設定に応じて、SCP、SFTP、またはその他のファイル転送プロトコルなどのさまざまな方法を使用してローカルコンピュータにダウンロードできます。

答え2

SOに関するこの質問考えられるアプローチを提案してください:MSSQLからMySQLにデータをダンプします。その後、おなじみのMySQLツールを使用できます。

MSSQL - > MySQLダンプにはいくつかの推奨方法がありますので、必要な方法を選択してください。

答え3

mysql クライアントを使用して mssql サーバーに接続できません。 MSSQLはWindowsベースのSQLデータベースサービスですが、MySQLはまったく異なるプロトコルです。これらを分離するのはTDSプロトコルです。 UnixのツールからMSSQLサービスに接続したい場合は、これらのツールがたくさんあります。 FreeTDS、PyMSSQL、ODBC/JDBC メソッドを使用できます。

既製の方法ツールを探している場合は、私が知っているツールはほとんどありません。

http://sqldump.sourceforge.net/

http://sqlbackupandftp.com/

彼らを見てください。

壊れやすい、

mysqldumpユーティリティはローカルディスクの場所のデータベースバックアップファイルをサポートしますが、mssqlまたはsybaseはこれらの柔軟性を直接提供しないようです。ただし、MSSQLでは、UNCパス(ネットワーク共有など)にデータベースバックアップファイルを書き込むことができます。これは、mssqlデータベースサーバーにローカルにインストールされたリモートファイルシステムパスとも呼ばれます。また、SQLコマンド自体が直接ftpをサポートしているため、データベースBACKUP DATABASEバックアップファイルをftpアップロード場所にストリームとしてアップロードできます。ただし、帯域幅の違いとプロトコルの制限は依然として考慮する必要があります。ローカルコンピュータでwinbind / smb共有を設定し、それをワークグループ/ ADドメインで使用できるようにし、MSSQLサーバーからアクセスできる場合、ネットワーク帯域幅制限がある場合はUNCパスを使用することをお勧めします。ローカルの場合は、すべてのセキュリティ要素を含めることを選択します。

FTPの場合、FTP管理は完全にローカルであり、FTPファイルシステム領域でアップロードパスを制限できるため簡単です。サンバ加入/ADユーザー要件などについて心配する必要はありません。おそらく、セキュリティ権限が適用された状態で、ftpサービスを純粋なネットワークの場所として使用してください。さて、ダンプが安全であることを確認してください。本番の場合は2倍で安全かどうかを確認します。 :-)

関連情報