테이블 레벨 백업
MS SQL Server 2005/2008에서 테이블 레벨 백업(덤프)을 수행하는 방법은 무엇입니까?
당신은 수없다니습을 할 수 .BACKUP DATABASE
에 할당되지 입니다.FILEGROUP
.
제안한 대로 테이블 데이터를 CSV 파일로 내보낼 수 있습니다. 표의 ' 아웃을 할 수 .CREATE TABLE
대본.
SQL Server Management Studio에서 다음 작업을 수행할 수 있습니다.
데이터베이스 > 작업 > 스크립트 생성을 마우스 오른쪽 버튼으로 클릭합니다.
그런 다음 스크립팅할 테이블을 선택하고 제약 조건 및 인덱스와 같은 연결된 개체를 포함하도록 선택할 수 있습니다.
얻기 위해DATA
뿐만 아니라schema
은 당은선택야합니다해신합다니를 선택해야 Advanced
및 GENERAL
세트Types of data to script
선택합니다.Schema and Data
.
대량 복사 유틸리티를 사용하여 테이블 수준 백업을 수행하는 중
내보낼 항목:
bcp.exe "select * from [MyDatabase].dbo.Customer " queryout "Customer.bcp" -N -S localhost -T -E
가져올 항목:
bcp.exe [MyDatabase].dbo.Customer in "Customer.bcp" -N -S localhost -T -E -b 10000
보시다시피 모든 쿼리를 기반으로 내보낼 수 있으므로 이를 사용하여 증분 백업도 수행할 수 있습니다.또한 SSMS를 사용하는 다른 방법과는 달리 스크립트를 작성할 수 있습니다.
필요한 단계는 다음과 같습니다.데이터를 얻으려면 5단계가 중요합니다.2단계에서는 개별 테이블을 선택할 수 있습니다.
EDIT 스택의 버전을 제대로 읽을 수 없습니다...여기 실물 크기 이미지가 있습니다. http://i.imgur.com/y6ZCL.jpg
아래 쿼리를 실행하여 데이터와 함께 기존 테이블의 기존 구조를 가진 새 테이블을 생성하는 기존 테이블의 백업을 수행할 수 있습니다.
select * into newtablename from oldtablename
테이블 구조만 복사하려면 다음 쿼리를 사용합니다.
select * into newtablename from oldtablename where 1 = 2
이것은 qntmfred의 솔루션과 비슷하지만 직접 테이블 덤프를 사용합니다.이 옵션이 약간 더 빠릅니다(BCP 문서 참조).
내보낼 항목:
bcp "[MyDatabase].dbo.Customer " out "Customer.bcp" -N -S localhost -T -E
가져올 항목:
bcp [MyDatabase].dbo.Customer in "Customer.bcp" -N -S localhost -T -E -b 10000
MySQL과 DUMP
SQL Server 2008 Management Studio는 SQL Server 2008 Management Studio입니다.
SSMS에서 해당 DB를 마우스 오른쪽 버튼으로 클릭하고 Tasks > Generate Scripts를 선택합니다.그런 다음 옵션 마법사의 두 번째 페이지에서 데이터도 스크립팅되도록 선택해야 합니다. 그러면 데이터가 생성됩니다.DUMP
당신을 위해 파일.
새 파일 그룹을 만들고 이 테이블을 배치한 다음 이 파일 그룹만 백업합니다.
Microsoft의 무료 데이터베이스 게시 마법사를 사용하여 SQL 스크립트(CREATE TABLE 및 INSERT INTO)로 텍스트 파일을 생성할 수 있습니다.
단일 테이블에 대해 이러한 파일을 생성할 수 있으며 SQL 스크립트를 실행하기만 하면 데이터를 포함한 전체 테이블을 "복원"할 수 있습니다.
여기에 설명된 문제와 일치할지 모르겠습니다.테이블의 증분 백업을 수행해야 했습니다. (새로 삽입된 데이터만 복사해야 합니다.)저는 DTS 패키지를 디자인하곤 했습니다.
('상태' 열을 기준으로) 새 레코드를 가져오고 데이터를 대상으로 전송합니다.('데이터 변환 작업'을 통해)
그리고 '상태'란을 업데이트했습니다. ('SQL 작업 실행'을 통해)
저는 '워크플로우'를 제대로 고쳐야 했습니다.
SQL Server 가져오기 및 내보내기 마법사를 사용합니다.
- ssms
- 데이터베이스 엔진 열기
- Alt. 내보낼 테이블이 들어 있는 데이터베이스를 클릭합니다.
- "작업"을 선택합니다.
- 데이터 내보내기를 선택합니다.."
- 마법사를 따릅니다.
모든 복구 모델을 사용하여 전체 또는 일부 SQL 서버 데이터베이스 또는 데이터베이스의 개별 파일 또는 파일 그룹을 백업할 수 있습니다.테이블 수준 백업을 만들 수 없습니다.
SQL 서버는 테이블 백업을 지원하지 않기 때문에 두 가지 옵션이 있을 수 있습니다.둘 다 테이블 작성 스크립팅부터 시작합니다.그런 다음 Script Table - INSERT 옵션을 사용하여 많은 삽입 문을 생성하거나 통합 서비스(2000년 포함 DTS) 등을 사용하여 데이터를 CSV 또는 유사한 형식으로 내보낼 수 있습니다.
BMC Recovery Manager(이전 이름: SQLBacktrack)를 사용하면 데이터베이스(테이블)의 개별 개체를 시점 단위로 복구할 수 있습니다.그것은 싸지는 않지만 환상적인 일을 합니다.
http://www.bmc.com/products/proddocview/0,2832,19052_19429_67883151_147636,00.html
다른 사용자가 실수로 테이블에서 행을 삭제한 후 테이블을 복원할 수 있는 경우 데이터베이스 스냅샷을 볼 수 있습니다.스냅샷에서 테이블(또는 행의 하위 집합)을 쉽게 복원할 수 있습니다.http://msdn.microsoft.com/en-us/library/ms175158.aspx 을 참조하십시오.
SqlTableZip이라는 무료 앱이 작업을 완료합니다.기본적으로 쿼리를 작성하면(물론 [테이블에서 * 선택]할 수도 있음) 앱이 모든 데이터가 포함된 압축 파일을 만들고 나중에 복원할 수 있습니다.
링크: http://www.doccolabs.com/products_sqltablezip.html
Handy Backup은 MSSQL 2005/2008을 포함하여 MSSQL 서버에서 덤프 파일을 자동으로 만듭니다.이러한 덤프는 특정 데이터베이스 내용의 정확한 사본을 포함하는 테이블 수준 이진 파일입니다.
Handy Backup으로 간단한 덤프를 만들려면 다음 지침을 따르십시오.
- Handy Backup을 설치하고 새 백업 작업을 만듭니다.
- 2단계에서 "MSSQL"을 데이터 소스로 선택합니다.새 창에서 백업할 데이터베이스를 표시합니다.
- 백업을 저장할 여러 대상 중에서 선택합니다.
- 4단계에서 "전체" 백업 옵션을 선택합니다.필요한 경우 타임스탬프를 설정합니다.
- 결과 덤프 파일을 압축하거나 암호화할 필요가 없는 경우 5단계를 건너뜁니다.
- 6단계에서는 덤프를 정기적으로 생성하는 태스크에 대한 예약을 설정합니다(작업을 수동으로 실행하지 않을 경우).
- 7단계를 건너뛰고 8단계에서 작업 이름을 지정합니다.작업이 완료되었습니다!
이제 이름 앞에 있는 아이콘을 클릭하여 새 작업을 실행하거나 예약된 시간을 기다립니다.Handy Backup은 데이터베이스에 대한 덤프를 자동으로 만듭니다.그런 다음 백업 저장소를 엽니다.MS SQL 백업이 있는 폴더(또는 몇 개의 폴더)를 찾을 수 있습니다.이러한 폴더에는 단일 ZIP으로 압축된 일부 이진 테이블 및 설정으로 구성된 테이블 수준 덤프 파일이 포함됩니다.
기타 데이터베이스
Handy Backup은 MySQL, MariaDB, Postgre에 대한 덤프를 저장할 수 있습니다.SQL, Oracle, IBM DB2, Lotus Notes 및 ODBC 드라이버가 있는 모든 일반 SQL 데이터베이스.이러한 데이터베이스 중 일부는 DBMS와 Handy Backup 간의 연결을 설정하기 위해 추가 단계가 필요합니다.
위에서 설명한 도구는 종종 SQL 데이터베이스를 테이블 수준 SQL 명령 시퀀스로 덤프하므로 이러한 파일을 수동으로 수정할 수 있습니다.
언급URL : https://stackoverflow.com/questions/680552/table-level-backup
'programing' 카테고리의 다른 글
WPF Scroll Viewer에서 스크롤 막대 너비를 높이는 방법은 무엇입니까? (0) | 2023.05.03 |
---|---|
특정 커밋에서 분기점을 만들려면 어떻게 해야 합니까? (0) | 2023.05.03 |
bash에서 stdout과 stderr 둘 다 배관? (0) | 2023.05.03 |
MongoDB, 인덱스된 필드에 대한 정규식에 의한 쿼리 성능 (0) | 2023.05.03 |
MSBuild TypeScript 컴파일 사용 안 함 (0) | 2023.05.03 |