Oracle Database 10g R2 Patch Set Release 10.2.0.5 インストール
なんで今更10g?
基幹システムの方は11gに最近更新したものの、データウェアハウスの方は予算も無いし10gで運用していたのだけど、ある日突然特定のSQLで突然落ちやがるのでサポートに問い合わせてダンプ送り付けたら、以下に該当するかもしれないとのこと。
- Bug 4655998 - OERI / dump from SQL involving SORT operations [ID 4655998.8]
10gR2から導入されたSORT処理に起因した内部処理で問題が発生し、ORA-600[rworupo.2]等のエラーが発生する事象らしい。
ということでPSR 10.2.0.5を取得し、インストールすることに
アップデート手順
詳しくはこのサイトの通り。
ありがてぇありがてぇとお祈りしながらインストール、ほぼトラブルもなく完了。あとは経過観察
データウェアハウスもPentahoに乗り換えたいなぁ
iDM フェデレーション
昔書いたメモが出てきた
iDM フェデレーション
IdM(Identity Management)におけるフェデレーションの基礎
まずはこのテキスト、とても分かり易い。 フェデレーションとはアイデンティティの連携であり信頼関係の連鎖
ざっくりいうと信頼関係にあるAとBのサービスにおけるユーザー1の認証は A or B が済ませてるならどっちでもやる必要ないよねってこと さらにBを信頼してるCというサービスもAがOKって言ってるんだからもういいだろ言わせんな恥ずかしい、となる
システム管理者のためのフェデレーション講座 http://www.microsoft.com/japan/powerpro/TF/column/nf_01_1.mspx
で、次 知りたかったAD FS 2.0の展望について、これでAD FSの資料が読める予備知識がそろったと思う エバンジェリスト本人すら公式で「なにこれ?」感に言及するという戦慄のマイナーっぷり でもどう考えても大事だろ。。。
AD FS 2.0 でアプリケーションの世界が変わる http://www.microsoft.com/japan/powerpro/TF/interview/42_1.mspx
予備知識もついたことだし、やっと技術資料に着手 読める、読めるわー
Active Directory フェデレーション サービスの概要 http://technet.microsoft.com/ja-jp/library/cc772593(WS.10).aspx
フェデレーションが解ったところでOpenIDとOAuthについての理解も深めてみる
OpenID や OAuth の役割と、既存のシングル・サインオンとの違い http://www.goodpic.com/mt/archives2/2008/01/openid_oauth.html
実践系ネタ Windows AzureとAD FS 2.0との連携(2) http://www.atmarkit.co.jp/fwin2k/operation/adfs2sso04/adfs2sso04_02.html
AD FS 2.0 のアーキテクチャと Windows Azure 連携の実装 ~ AD FS 2.0 によるシングル サインオンの実現 2 ~ http://msdn.microsoft.com/ja-jp/events/Video/ff979302
ADFS2.0 & WIF on AzureでオンプレミスとクラウドのSSO その1 http://idmlab.eidentity.jp/2010/01/adfs20-wif-on-azuresso-1.html
参考 分かり易い資料の筆者 富士榮 尚寛 氏のブログ http://idmlab.eidentity.jp/
AD FS 2.0 を利用したGoogle Appsシングルサインオン http://www.tensi.info/home/kensyo-infra/adfs20-gapps
OpenID Japanの仕様翻訳 http://openid-foundation-japan.github.com/
WindowsAzure 日本リージョン発表
最近仕事で普通にWindowsAzureを利用しはじめているが、この数ヶ月の進化が目覚ましい。
年初にはAzureWebsiteの独自ドメイン(ネイキッドドメイン含む)対応が完了し、 最近ではSNIベースのSSL証明書インストールとインスタンスのオートスケールにも対応と、どんどん利用可能な範囲が広がってきた。
現在の利用状況はWebSite一つとコンピューティング(XS)を一つ利用中 今後の予定としては、Azure側のActiveDirectoryをオンプレミス側と同期してOffice365とのフェデレーションを実現する予定。 なんかDNSもホストできるらしいし、それも利用してみようかな
そして現在の悩みと言えば、レイテンシの問題 Azure側のサーバを利用していると、どうしてもレイテンシが高い まぁリージョンが東アジアだもんね、仕方ないよね とは言いつつ小さくない懸案に成長しそうな予感もあったりして どうしようかなーとか考えてたら、とても嬉しいニュースを発見
「Microsoft Windows Azure」の国内ビジネス強化に向けて 日本リージョンの開設計画を公開
日本リージョンキター!
しかも関東と関西で地域レプリケーション可能! 通信速度の改善に大きく寄与しそうな日本リージョン構築の発表ですよ こういう足回りの部分から改善が期待できるアップデートは非常に嬉しい、超期待
i386フォルダの統合インストール
- SP2は当てたけれど…
せっかくSP2をインストールしたにも関わらず、ローカルのi386フォルダはインストール当時のままではIIS等の再インストール等に何かと不便な為、インストールイメージにもパッチを適応する。
フォルダが「C:\i386」にある場合(メーカーPCの場合は「C:\windows\i386」)
「C:\sp2\i386」のようにファイルが展開されても良いように移動し、以下の様に実行する。
Server2003の場合
>WindowsServer2003-KB889101-SP1-x86-JPN.exe /integrate:C:\sp2
WindowsXPの場合
>WindowsXP-KB835935-SP2-JPN.exe /integrate:c:\sp2
- 参考
IISがインストールできない
- トラブルです
i386のファイルを指定すると「staxmem_dll をコピーできません」と言われる。
根性なしめ、そのへん何とかコピーしろよと思わなくも無いが、そうも言ってられないので調査開始
で、紆余曲折を経て、なんとか対応するナレッジを発見
文書番号:894351「Windows XP Professional SP2 を実行しているコンピュータに IIS をインストールするときにエラー メッセージ "staxmem.dll をコピーできません" が表示されることがある 」
http://support.microsoft.com/kb/894351/ja
タイトル長っ、まぁいいか
要するに「Secedit.sdb」と言うデータベース ファイルが破損しているかもしれないので
チェックとリカバリと場合によっては修復か再生成の必要がると、こういうこと
早速実行してみる
- チェックの実行
C:\>esentutl /g C:\Windows\security\database\secedit.sdb
Microsoft(R) Windows(TM) Database Utilities
Version 5.1
Copyright (C) Microsoft Corporation. All Rights Reserved.Initiating INTEGRITY mode...
Database: C:\Windows\security\database\secedit.sdb
Temp. Database: TEMPINTEG3764.EDBChecking database integrity.
The database is not up-to-date.
This operation may find that this database is corrupt because data from the log files has yet to be placed in the database.To ensure the database is up-to-date please use the 'Recovery' operation.
Scanning Status (% complete)
0 10 20 30 40 50 60 70 80 90 100
|----|----|----|----|----|----|----|----|----|----|
...................................................
Integrity check successful.
Operation completed successfully in 1.0 seconds.
どうもよろしくないらしい
- sdbの修復
「This operation may find that this database is corrupt」と表示されたので修復か再生成を行う、先ずは修復
esentutl /p C:\Windows\security\database\secedit.sdb
C:\Documents and Settings\Administrator>esentutl /p C:\Windows\security\database
\secedit.sdbMicrosoft(R) Windows(TM) Database Utilities
Version 5.1
Copyright (C) Microsoft Corporation. All Rights Reserved.Initiating REPAIR mode...
Database: C:\Windows\security\database\secedit.sdb
Temp. Database: TEMPREPAIR1252.EDBChecking database integrity.
The database is not up-to-date. This operation may find that
this database is corrupt because data from the log files has
yet to be placed in the database.To ensure the database is up-to-date please use the 'Recovery' operation.
Scanning Status (% complete)
0 10 20 30 40 50 60 70 80 90 100
|----|----|----|----|----|----|----|----|----|----|
...................................................
Integrity check successful.
Note:
It is recommended that you immediately perform a full backup
of this database. If you restore a backup made before the
repair, the database will be rolled back to the state
it was in at the time of that backup.Operation completed successfully in 8.641 seconds.
ここでIISのインストールを施行、動かなきゃ再生成になるらしい
まぁ結果としては、インストール成功、じゃあとりあえずウチはOKだな
- 忘れずにASP.NETもインストール
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727>aspnet_regiis.exe -i
ASP.NET (2.0.50727) のインストールを開始します。
................................................................................
...
ASP.NET (2.0.50727) のインストールが完了しました。
完了
Windows板Oracle10gにPatchsetをインストールする
前提条件
- SGAが400MB以上あること
- 自動メモリ管理(ASM)はONで構わない
- SHRED_POOL_SIZEが150MB以上あること
- JAVA_POOL_SIZEが150MB以上あること
サービスを停止する
OracleDBConsole[インスタンス名]
OracleOraDb10g_home1iSQL*Plus
OracleOraDb10g_home1TNSListener
OracleService[インスタンス名]
※以下はその他のサービスによりDLLをロックされる場合に停止
Distributed Transaction Coordinator
Windows Firewall/Internet Connection Sharing (ICS)
Windows Management Instrumentation
Pachsetのインストール
- Patchset CD-ROMから対象のZIPファイルをコピー
- ZIPファイルを解凍
- setup.exeを実行しUniversalInstallerを実行
- インストール先の指定、すでにインストールされているorahomeを指定し、上書きする
サービスを起動
OracleDBConsole[インスタンス名]
OracleService[インスタンス名]
OracleOraDb10g_home1iSQL*Plus
OracleOraDb10g_home1TNSListener
DBの更新準備
初期化方法の確認
- システム初期化パラメータファイル(initsid.ora)を使用しているのか、サーバ・パラメータ・ファイルspfile[dbname].oraを使用しているのかを確認
SQL> show parameter pfile
NAME TYPE VALUE spfile string E:\ORACLE\PRODUCT\10.2.0\DB_1\DBS\SPFILE[インスタンス名].ORA
サーバパラメータの確認と修正
- SGAターゲットのサイズを確認し350MB以下であれば修正
SQL> show parameter sga_target
NAME TYPE VALUE sga_target big integer 280 SQL> ALTER SYSTEM SET SGA_TARGET='400M' SCOPE=spfile;
- shared_pool_sizeのサイズを確認し150MB以下であれば修正
SQL> show parameter shared_pool_size
NAME TYPE VALUE shared_pool_size big integer 0 SQL> ALTER SYSTEM SET SHARED_POOL_SIZE='150M' SCOPE=spfile;
システムが変更されました。
- java_pool_sizeのサイズを確認し150MB以下であれば修正
SQL> show parameter java_pool_size
NAME TYPE VALUE java_pool_size big integer 0 SQL> ALTER SYSTEM SET JAVA_POOL_SIZE='150M' SCOPE=spfile;
システムが変更されました。
- DBを一旦終了
SQL> shutdown
ORA-01507: データベースがマウントされていません。
ORACLEインスタンスがシャットダウンされました。
DBの更新作業
DBをアップグレードモードで起動する
SQL> connect / as sysdba
アイドル・インスタンスに接続しました。
SQL> startup upgrade
ORACLEインスタンスが起動しました。
Total System Global Area 419430400 bytes Fixed Size 1289832 bytes Variable Size 322961816 bytes Database Buffers 92274688 bytes Redo Buffers 2904064 bytes データベースがマウントされました。
データベースがオープンされました。
アップグレードログを確認
sqlplusを起動したカレントディレクトリに保存されたpatch.logを確認し異常がないことを確認する
DBの再起動
SQL> shutdown
データベースがクローズされました。
データベースがディスマウントされました。
ORACLEインスタンスがシャットダウンされました。
SQL> startup
ORACLEインスタンスが起動しました。
Total System Global Area 419430400 bytes Fixed Size 1289832 bytes Variable Size 331350424 bytes Database Buffers 83886080 bytes Redo Buffers 2904064 bytes データベースがマウントされました。
データベースがオープンされました。