サービスを再起動した後、SQL Server 2012のチェックアイデンティティジャンプ数

著作権:コピー、ソースを明記してくださいhttps://blog.csdn.net/weixin_39392627/article/details/86654871

ENV:のWindows Server 2016

       SQL Server 2012のSP1

友人が最近、私に質問をし、アイデンティティの問題ジャンプの後、SQL Serverサービスが再起動されます。

私は、再起動サービスリセットの前に番号を見つけるために、スクリプトを使用することですが、マルチテーブルの時にこの方法は大きな負担であることを覚えているが発生しているSQL Serverの2008R2を覚えています。

トレースフラグ272は溶液です。

 

1.テスト用DBを作成します。

コマンド:

CREATE DATABASE [TBTEST02]
 CONTAINMENT = NONE
 ON  PRIMARY 
( NAME = N'TBTEST02', FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL11.SQL2012\MSSQL\DATA\TBTEST02.mdf' , SIZE = 4096KB , FILEGROWTH = 1024KB )
 LOG ON 
( NAME = N'TBTEST02_log', FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL11.SQL2012\MSSQL\DATA\TBTEST02_log.ldf' , SIZE = 1024KB , FILEGROWTH = 10%)
GO

 

2.データとテストテーブルを作成します。

コマンド:

CREATE TABLE dbo.TEST01 (id int identity, name varchar(20))

insert into dbo.TEST01(name) values('john'),('mary')

select * from dbo.TEST01

 

3.身元情報を確認します

コマンド:

dbcc checkident('TEST01', NORESEED)

ID値は現在2であります

 

4. SQL Serverサービス、および新しいテスト・データの追加を再起動します。

コマンド:

insert into dbo.TEST01(name) values('sean'),('larry')

select * from dbo.TEST01

スキップ条件が再起動した後に発生します

 

5.テストトレースフラグ272は、起動パラメータに追加され、SQL Serverサービスを再起動します

 

6.チェック開始ID値

コマンド:

dbcc checkident('TEST01', NORESEED)

identitt値1003

 

7.テストデータを増やします

コマンド:

insert into dbo.TEST01(name) values('sean'),('larry')

select * from dbo.TEST01

アイデンティティの設定値1004、1005

複数のテーブルがある場合アイデンティティジャンプ数の問題を抱えている、トレースフラグは良い選択かもしれブートパラメータが有効となります内側に、配置する必要があります。

またはスクリプトの再セットの使用

 

おすすめ

転載: blog.csdn.net/weixin_39392627/article/details/86654871