復旧モデルが単純復旧モデルじゃないとトランザクション ログはバックアップするタイミングでしか削除されずどんどん肥大化してしまうようだ。肥大化したログがドライブを圧迫してしまった場合の対応方法を示す。
肥大化しているログファイル及び復旧モードを調べる
> sqlcmd -S %computername%\Instance_name -E
1> exec sp_databases (データベース名を調べる)
2> go
1> select databasepropertyex('database_name', 'recovery') (復旧モデルを調べる)
2> go
1> select name, physical_name, state_desc from sys.master_files
2> where database_id = DB_ID(N'database_name')
(ログファイルの論理名を name 列で確認)
3> go
ログファイルを空き領域のあるドライブに移動する
> sqlcmd -S %computername%\Instance_name -E
1> alter database database_name set offline (offline にする。データベースへの接続を全て終了しないと offline にできないみたい)
2> go
// ログファイルを空き領域のあるドライブへ移動する。 //
1> alter database database_name modify file (name = logical_name, filename = 'new_path')
2> go
1> alter database database_name set online (online にする)
2> go
1> select name, physical_name, state_desc from sys.master_files
2> where database_id = DB_ID(N'database_name')
(ファイルが変更されたことを確認)
3> go
ログファイルを圧縮する
> sqlcmd -S %computername%\Instance_name -E
1> use database_name
2> go
1> alter database database_name set recovery simple (復旧モデルを simple に変更する)
2> go
1> dbcc shrinkfile (log_logical_name, 1) (1MB に圧縮する)
2> go
(参考)
2008年10月20日月曜日
2008年10月19日日曜日
2008年10月18日土曜日
SQL Server 2005 自習書シリーズ
仕事で勉強する必要性に迫られ、「SQL Server 2005 自習書シリーズ」で勉強しています。
私は、SQL Server 2005 Express を使用しているのですが、
サンプルデータベース「AdventureWorks」がインストールされていないので、ここを参考にインストールします。
私は、SQL Server 2005 Express を使用しているのですが、
サンプルデータベース「AdventureWorks」がインストールされていないので、ここを参考にインストールします。
- インストーラをここからダウンロードします。(AdventureWorksDB.msi)
- インストール位置を確認します。
select physical_name from sys.database_files where name = 'master'
go - AdventureWorksDB.msi を実行し、手順2 で調べたインストール位置にインストールします。
- 手順3 でインストールしたファイルをアタッチします。
exec sp_attach_db @dbname=N'AdventureWorks', @filename1=N'C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data\AdventureWorks_Data.mdf', @filename2=N'C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data\AdventureWorks_log.ldf'
SQL Server 2005 Express Edition のインストール
無償で使えるデータベースであり、アプリケーションのインストーラに付属していることがある。
以前は、MS の無償で使えるデータベース エンジンは、MSDE だったが、SQL Server 2005 Express Edition に置き換えられる。
ダウンロード
「~ with Advanced Services」の方は、「SQL Server 2005 Management Studio Express (SSMSE)」などのツールが一緒にインストールされる。
また、「SSMSE」単体のインストーラもあります。
前提条件
インストールの前提条件として、.NET Framework 2.0 が必要となる。
以前は、MS の無償で使えるデータベース エンジンは、MSDE だったが、SQL Server 2005 Express Edition に置き換えられる。
ダウンロード
「~ with Advanced Services」の方は、「SQL Server 2005 Management Studio Express (SSMSE)」などのツールが一緒にインストールされる。
- Microsoft SQL Server 2005 Express Edition Service Pack 2
- Microsoft SQL Server 2005 Express Edition with Advanced Services Service Pack 2
また、「SSMSE」単体のインストーラもあります。
前提条件
インストールの前提条件として、.NET Framework 2.0 が必要となる。
2008年10月15日水曜日
登録:
投稿 (Atom)