天天看點

SMO學習筆記(一)——備份篇之完全備份

SQL Server Management Studio示範完全備份:

1.登入

2.找到備份選項

3.設定備份參數

4.備份成功

SMO完全備份代碼:

/// <summary>

    /// 完全備份

    /// (1)是備份的基準。在做備份時第一次備份都建議使用完全備份。

    /// (2)完全備份會備份資料庫的所有資料檔案、資料對象和資料。

    /// (3)會備份事務日志中任何未送出的事務。因為已送出的事務已經寫入資料檔案中。

    /// </summary>

    /// <param name="Connection"></param>

    /// <param name="SmoParm">備份所需參數</param>

    public static void DatabaseBackups(string SqlConnectionString)

    {

        using (SqlConnection Connection = new SqlConnection(SqlSqlConnectionString))

        {

                Server server = new Server(new ServerConnection(Connection));

                Backup bak = new Backup();

                //備份模式

                bak.Action = BackupActionType.Database;

                //将要備份資料庫的名稱

                bak.Database = "test";

                //設定為不是增量式備份

                bak.Incremental = false;

                //Initialize - 如設定為真(True),該備份裝置将取代其他備份媒介而成為首選。

                bak.Initialize = true;

                ///LogTruncation備份日志選項。

                //TruncateOnly - 将資料庫縮減後剩餘的空間返還給作業系統。

                //NoTruncate - 備份交易日志。日志裡提供時間标記。

                //Truncate - 備份交易日志,但不保留交易紀錄。

                bak.LogTruncation = BackupTruncateLogType.Truncate;

                //DeviceType也可将備份儲存到 LogicalDevice 或錄音帶之類的其他目的地,這裡選擇儲存為檔案

                //注意!建立備份所在的目錄必須存在

                bak.Devices.AddDevice(string.Format(@"{0}\{1}.{2}", "D:", "DB_BACK","bak") , DeviceType.File);

                bak.SqlBackup(server);

            }

        }