SQLServerの概要と基本用語です。(確認環境:SQL Server Management Studio18)
目次
サンプル | サーバ/インスタンス/データベースの関係 |
システムデータベース | |
SQL Serverのファイルとトランザクションログ | |
Windows認証とSQL Server認証 | |
SQLServerのバージョンを調べる |
サーバ/インスタンス/データベースの関係
サーバ名とインスタンス
一番上の赤枠は、サーバ名とインスタンス名です。円マークで区切られています。「名前付きインスタンス」と呼ばれます。
円マークで区切られてなくサーバ名だけのもの(MSSQLSERVER)は「規定のインスタンス」と呼ばれます。
インスタンスはプロセスとメモリ領域から構成されます。
データベースとテーブル
インスタンスの配下に複数のデータベースがあります。(Oracleは1インスタンス1DBです)
データベースの中に複数のテーブルがあります。
dboは、規定のスキーマです。
システムデータベース
システムデータベースは5つあります。
上記図は4つですが他にResource データベースがあります。
master | システムの情報 |
model | データベースのテンプレート |
msdb | SQL Server エージェントが使用 |
tempdb | 一時的な処理等で使用 |
Resource | システムオブジェクトを格納 |
SQL Serverのファイルとトランザクションログ
データベースごとにファイルが作られています。
mdfはデータやインデックスやストアドプロシージャを含むファイルです。
ldfはトランザクションログファイルです。データを更新した履歴が書かれます。
論理的な管理
上記の物理ファイル内では論理的な管理がされています。
セグメント | エクステントの塊です。テーブルやインデックスにあたります。 |
エクステント | 連続したページです。 |
ページ | 最小単位で8K(デフォルト)です。 |
トランザクションログファイルの制御方法
データベースを右クリックしてプロパティを選択し、オプション→から復旧モデル(Recovery model)で単純(Simple)、完全(Full)、一括ログ(Bulk-logged)を選択できます。
単純(Simple) | ログはチェックポイントで切り捨てられます。ログのバックアップは行わないのでログを活用した復旧は想定していません。ログ領域は再利用されるためトランザクションログの管理は不要です。 |
完全(Full) | ログはログのバックアップ時に切り捨てられます。ログを活用した復旧が可能です。ログのバックアップ行わないとログは肥大化するためログの管理が必要です。 |
一括ログ (Bulk-logged) |
完全(Full)を補完します。一括コピーで使用します。 |
SQL Serverのログ
管理(Management)配下にあります。
クリックすると詳細が表示されます。
Windows認証とSQL Server認証
Windows認証は、Windowsのログオン情報を元に認証します。
ログインするときユーザとパスワードの入力は不要です。
ローカルPCだけでなくActive Directoryのドメインのログオン情報も使用できます。
SQL Server認証は、ユーザ名とパスワードを入力します。ユーザとパスワードはSQLServerで保持します。
Microsoftは可能な場合はWindows認証の使用を推奨しています。
SQLServerのバージョンを調べる
SELECT @@VERSION
上記sqlを実行すると以下のように表示されます。
__COLUMN1 |
---|
Microsoft SQL Server 2019 (RTM) - 15.0.2000.5 (X64) Sep 24 2019 13:48:23 Copyright (C) 2019 Microsoft Corporation Express Edition (64-bit) on Windows 10 Home 10.0 <X64> (Build 19042: ) |
SQL Server 2019と表示されています。
関連の記事
SQLServer SSMSの使い方(DB/TBL作成/データ出力)
SQLServer DDL文でtable,view等を作成するサンプル