[c#] C#과 데이터베이스 백업 및 복구

C#으로 데이터베이스를 백업하고 복구하는 것은 매우 중요합니다. 이 기능을 구현하면 데이터 보존 및 시스템 안정성을 유지할 수 있습니다. 이번 게시물에서는 C#을 사용하여 데이터베이스 백업 및 복구를 수행하는 방법에 대해 알아보겠습니다.

데이터베이스 백업

using System;
using System.Data.SqlClient;

namespace DatabaseBackupRestore
{
    class Program
    {
        static void Main(string[] args)
        {
            string connectionString = "Data Source=ServerName;Initial Catalog=DatabaseName;Integrated Security=True";
            string backupPath = "C:\\BackupFolder\\DatabaseBackup.bak";

            using (SqlConnection connection = new SqlConnection(connectionString))
            {
                string backupQuery = $"BACKUP DATABASE DatabaseName TO DISK='{backupPath}'";

                using (SqlCommand command = new SqlCommand(backupQuery, connection))
                {
                    connection.Open();
                    command.ExecuteNonQuery();
                    connection.Close();
                }
            }

            Console.WriteLine("Database backup completed successfully.");
        }
    }
}

위의 코드는 C#을 사용하여 데이터베이스를 백업하는 방법을 보여줍니다. SqlConnectionSqlCommand 클래스를 사용하여 데이터베이스 연결 및 쿼리 실행을 수행합니다.

데이터베이스 복구

using System;
using System.Data.SqlClient;

namespace DatabaseBackupRestore
{
    class Program
    {
        static void Main(string[] args)
        {
            string connectionString = "Data Source=ServerName;Initial Catalog=master;Integrated Security=True";
            string backupPath = "C:\\BackupFolder\\DatabaseBackup.bak";
            string databaseName = "RestoredDatabase";

            using (SqlConnection connection = new SqlConnection(connectionString))
            {
                string restoreQuery = $"RESTORE DATABASE {databaseName} FROM DISK='{backupPath}'";

                using (SqlCommand command = new SqlCommand(restoreQuery, connection))
                {
                    connection.Open();
                    command.ExecuteNonQuery();
                    connection.Close();
                }
            }

            Console.WriteLine("Database restore completed successfully.");
        }
    }
}

위의 코드는 C#을 사용하여 데이터베이스를 복구하는 방법을 보여줍니다. 백업된 데이터베이스 파일 경로 및 복구할 데이터베이스 이름을 지정하여 복구 작업을 수행합니다.

데이터베이스 백업 및 복구 기능은 애플리케이션의 안정성과 데이터 보호를 위해 필수적입니다. C#을 활용하여 이러한 기능을 구현하면 데이터 관리 및 시스템 관리에 큰 도움이 될 것입니다.

위의 예시는 SQL Server와의 연동 예제입니다. 다른 데이터베이스 관리 시스템을 사용할 경우 그에 맞는 라이브러리 및 쿼리를 사용해야 합니다.

이 글은 Microsoft Docs를 참고하여 작성되었습니다.