SQL Server 2005: 名前付きインスタンスを既定のインスタンスに変換する

2024-04-04

SQL Server の名前付きインスタンスを既定のインスタンスに変換する方法

SQL Server では、複数のインスタンスを同じコンピューターにインストールできます。各インスタンスは独立した環境として動作し、異なるポートを使用します。通常、最初のインスタンスは "MSSQLSERVER" という名前の既定のインスタンスとしてインストールされます。それ以降のインスタンスは、名前を付けてインストールする必要があります。

このドキュメントでは、名前付きインスタンスを既定のインスタンスに変換する方法について説明します。

手順

  1. SQL Server Management Studio (SSMS) を起動します。
  2. オブジェクト エクスプローラー で、サーバー ノードを展開し、名前を変換したいインスタンスを選択します。
  3. インスタンスのプロパティ ダイアログボックスを開きます。
  4. プロパティ ページで、インスタンス名 ボックスを空にします。
  5. OK をクリックします。

注意事項

  • 名前付きインスタンスを既定のインスタンスに変換すると、そのインスタンスのポート番号は 1433 に変更されます。
  • 名前付きインスタンスを既定のインスタンスに変換する前に、そのインスタンスを使用しているアプリケーションをすべて停止する必要があります。

追加情報

  • 名前付きインスタンスを既定のインスタンスに変換する代わりに、SQL Server セットアップ を使用して名前付きインスタンスを削除し、新しい既定のインスタンスをインストールすることができます。
  • 名前付きインスタンスを既定のインスタンスに変換する前に、バックアップ を実行することをお勧めします。

補足

  • 上記の手順は、SQL Server 2005 を含むすべてのバージョンの SQL Server に適用されます。
  • SQL Server 2005 では、SQL Server Management StudioSQL Server Management Console と呼ばれていました。

コマンドラインによる変換

上記の GUI 手順に加えて、コマンドラインを使用して名前付きインスタンスを既定のインスタンスに変換することもできます。

sqlcmd -S <instance_name> -E -Q "EXEC sp_dropserver 'MSSQLSERVER'"
sqlcmd -S <instance_name> -E -Q "EXEC sp_addserver 'MSSQLSERVER', local"

上記のコマンドは、まず sp_dropserver システムプロシージャを使用して名前 "MSSQLSERVER" のサーバーを削除し、次に sp_addserver システムプロシージャを使用して同じ名前のサーバーを既定のインスタンスとして追加します。

  • コマンドラインによる変換を実行する前に、バックアップ を実行することをお勧めします。
  • コマンドラインによる変換は、SQL Server サービス が停止されている状態で実行する必要があります。

トラブルシューティング

名前付きインスタンスを既定のインスタンスに変換する際に問題が発生した場合は、次の点を確認してください。

  • インスタンスを使用しているアプリケーションがすべて停止されていることを確認してください。
  • インスタンスのデータファイルとログファイルの場所が変更されていないことを確認してください。
  • 上記の情報は参考用です。詳細は、Microsoft Docs を参照してください。



-- 接続文字列
$connectionString = "Data Source=localhost\MSSQLSERVER;Initial Catalog=master;Integrated Security=True;"

# SSMS を起動
$ssms = New-Object SqlSmo.SqlStudio

# インスタンスのプロパティを取得
$instanceProperties = $ssms.ServerConnectionDialog.GetProperties($connectionString)

# インスタンス名を空にする
$instanceProperties.InstanceName = ""

# プロパティを設定
$ssms.ServerConnectionDialog.SetProperties($connectionString, $instanceProperties)

# 接続を閉じる
$ssms.Disconnect()
# サーバー名を削除
sqlcmd -S <instance_name> -E -Q "EXEC sp_dropserver 'MSSQLSERVER'"

# サーバーを追加
sqlcmd -S <instance_name> -E -Q "EXEC sp_addserver 'MSSQLSERVER', local"
  • 上記のコードは、サンプルコードです。実際の環境に合わせて変更する必要があります。



SQL Server の名前付きインスタンスを既定のインスタンスに変換するその他の方法

  1. レジストリエディタ を起動します。
  2. 次のキーに移動します。
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQLServer
  1. MSSQLServer キーがない場合は作成します。
  2. MSSQLServer キーを選択して右クリックし、新規 > DWORD (32 ビット) 値 を選択します。
  3. 新しい値の名前を IsDefaultInstance に変更します。
  4. IsDefaultInstance をダブルクリックし、値を 1 に設定します。
  5. コンピューターを再起動します。

方法 2:

  1. コマンドプロンプト を起動します。
  2. 次のコマンドを実行します。
sc config MSSQLSERVER start=auto
net start MSSQLSERVER
  1. SQL Server サービス を停止します。
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSSQLSERVER\Parameters" /v InstanceName /t REG_SZ /d "" /f
  • レジストリを編集する前に、レジストリエディタの使用方法を理解していることを確認してください。

sql-server sql-server-2005 named-instance


初心者でも分かる!SQL Server 2005で一意制約を作成する方法

SQL Server 2005で一意制約を作成するには、2つの方法があります。Transact-SQL (T-SQL) を使用するSQL Server Management Studio (SSMS) を使用するT-SQL を使用する例:SSMS でデータベースに接続します。...


SSMS、Bcp、CSV:3つの方法でSQLite データを SQL Server に移行する方法

このガイドでは、SQLite データベースから SQL Server へのデータ移行方法について、詳細な手順と複数のオプションを説明します。移行方法は、データ量、要件、スキルレベルによって異なります。移行方法:直接インポート: SSMS (SQL Server Management Studio) を使用: SSMS で SQL Server に接続します。 "データベース" エンジンを展開し、移行先のデータベースを選択します。 右クリックして "タスク" > "インポート" を選択します。 データソースとして "フラットファイル" を選択し、"次へ" をクリックします。 ソースファイルとして SQLite データベースファイル (*.db) を選択し、"次へ" をクリックします。 データのプレビューと列の割り当てを行います。 設定を確認して "完了" をクリックします。 Bcp コマンドラインツール: コマンドプロンプトを開きます。 次のコマンドを実行します。...


ORDER BY RAND() だけじゃない! SQL Server でランダムな行をスマートに取得するテクニック集

方法 1: ORDER BY RAND() を使用する最も一般的な方法は、ORDER BY 句で RAND() 関数を使用することです。これにより、行がランダムな順序でソートされ、LIMIT 句を使用して必要な数の行を返すことができます。この方法は、少量のデータを取得するのにシンプルで効率的です。しかし、大量のデータを取得する場合、パフォーマンスが低下する可能性があります。これは、ORDER BY RAND() がテーブル全体をスキャンし、各行をランダムな順序でソートする必要があるためです。...


PostgreSQLのISNULL():詳細解説と代替方法

SQL ServerのISNULL()関数に相当する機能は、PostgreSQLには標準で用意されていません。しかし、COALESCE関数やCASE式を使うことで、同様の処理を実現できます。代替機能詳細COALESCE関数は、複数の引数を順番に評価し、最初のNULLではない値を返します。...


SQL ServerクエリでNULL値を置き換える方法の比較

SQL ServerクエリでNULL値を0に置き換える方法はいくつかあります。ここでは、代表的な方法であるISNULL()関数とCASE式をご紹介します。ISNULL()関数は、最初の引数がNULLかどうかをチェックし、NULLの場合は2番目の引数を返します。...