ubuntu

SQL Server在Ubuntu上如何备份与恢复

小樊
42
2025-05-27 17:03:01
栏目: 云计算

在Ubuntu上备份和恢复SQL Server数据库,你可以使用sqlpackage工具或者mssql-scripter工具。以下是使用这些工具进行备份和恢复的基本步骤:

使用 sqlpackage 工具

sqlpackage 是一个命令行工具,可以用来部署、更新、创建脚本化数据库以及迁移数据。它支持SQL Server的备份和还原功能。

安装 sqlpackage

首先,你需要安装sqlpackage。你可以从Microsoft的官方GitHub页面下载适用于Linux的.deb包。

wget https://packages.microsoft.com/config/ubuntu/$(lsb_release -rs)/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
sudo dpkg -i packages-microsoft-prod.deb
sudo apt-get update;
sudo apt-get install -y sqlpackage

备份数据库

使用sqlpackage备份数据库的命令如下:

sqlpackage \
  -Action = Export \
  -SourceServerName <服务器名> \
  -SourceDatabaseName <数据库名> \
  -TargetFile <备份文件路径> \
  -Provider SQLNCLI11

<服务器名><数据库名><备份文件路径>替换为实际的服务器名称、数据库名称和备份文件的完整路径。

恢复数据库

恢复数据库的命令如下:

sqlpackage \
  -Action = Import \
  -SourceFile <备份文件路径> \
  -TargetServerName <服务器名> \
  -TargetDatabaseName <数据库名> \
  -Provider SQLNCLI11

<备份文件路径><服务器名><数据库名>替换为实际的备份文件路径、服务器名称和数据库名称。

使用 mssql-scripter 工具

mssql-scripter 是一个用于生成SQL Server数据库脚本的工具,它可以用来备份数据库结构和数据。

安装 mssql-scripter

安装mssql-scripter的步骤与安装sqlpackage类似,你可以从GitHub页面下载.deb包并安装。

wget https://packages.microsoft.com/config/ubuntu/$(lsb_release -rs)/mssql-scripter.deb -O mssql-scripter.deb
sudo dpkg -i mssql-scripter.deb
sudo apt-get update;
sudo apt-get install -y mssql-scripter

备份数据库

使用mssql-scripter备份数据库的命令如下:

mssql-scripter \
  -S <服务器名> \
  -d <数据库名> \
  -U <用户名> \
  -P <密码> \
  -o <输出文件路径> \
  -q "BACKUP DATABASE [<数据库名>]"

<服务器名><数据库名><用户名><密码><输出文件路径>替换为实际的服务器名称、数据库名称、用户名、密码和输出文件的完整路径。

恢复数据库

mssql-scripter不直接支持恢复操作,因为它主要用于生成脚本。你需要手动执行生成的备份脚本来恢复数据库。

请注意,上述命令中的-Provider SQLNCLI11参数可能需要根据你的SQL Server版本进行调整。如果你使用的是SQL Server 2017或更高版本,可能需要使用-Provider MSSQLSERVER或其他适当的提供程序。

在执行备份和恢复操作之前,请确保你有足够的权限,并且已经对数据库进行了适当的备份策略规划。

0
看了该问题的人还看了