Keiko のすべての投稿

[LDAP認証初心者]LDAPとは・・・?

C#にてLDAP認証を実装することになり
テスト環境のLDAPサーバも構築しないといけなくなり、
今までLDAPについては認証をするものということくらいか
知らなかったので、先ずはLDAPとは何かについて調べてみました。

■LDAP(Lightweight Directory Access Protocol)
ディレクトリ・サービスに接続するために使用されるプロトコルの一つ

■ディレクトリ・サービス
コンピュータネットワーク上にあるユーザ情報、マシン名などの資源を管理するサービス
ユーザ名などのキーとなる値から様々な情報を検索することが可能

・ディレクトリーサービスとして代表的なものとして
DNS(Domain Name Syetem),オープンソースのOpenLDAP,
MicrosoftのWindows2000以降のサーバ製品に標準搭載されているActive Directory

・ディレクトリサービスは特殊なデータベースを用いるため、一般的なデータベースとは
異なった特徴がある

読み取りが高速
分散型の情報格納モデル
高度な検索機能を持つ

 

本番環境では、NECのESD(EnterpriseDirectoryServer)を使用するということでしたが
テスト環境ではオープンソースのOpenLDAPを使用して構築することになりました。

次回は、OpenLDAPでのLDAPサーバ構築について書いてみたいと思います。
(サーバ構築が順調に進んでいれば。。)

 

[Oracle初心者運用メモ]全テーブルの件数を取得

OracleDB内の全テーブルの件数を取得するSQLを調べてみたところ
一番簡単なのは下記のSQLでした。

SELECT TABLE_NAME, NUM_ROWS FROM USER_TABLES;

但し、このSQLは、統計情報から件数を参照するので
統計情報直後でないと、正確な件数は求められません。

大体の件数が知りたいのであれば、このSQLでいけるけど。。
あまり使えないかな~。

次回は、最新の件数を取得する方法を調べてみたいと思います。

 

[Oracle初心者運用メモ]初めて見るエラー

先日、OracleDBへの接続で
下記のエラーメッセージが表示されました。

「ORA-12571: TNS:パケット・ライターに障害が発生しました」

初めて見るエラーだったので調べてみると
クライアントとサーバー・プロセス間の接続が切断された場合など
ネットワークが原因のようです。

再接続したところエラーは表示されず、正常に接続でき
それ以降は再現していません。

頻繁に発生するようだったら
何かしら回避策を調査しようと思います。

[Oracle初心者運用メモ]リスナーのHOST名変更

Oracle DBサーバとして使用しているPCをドメイン参加に変更したところ、
Oracle DBへ接続できなくなってしまいました。

よく考えたら、ドメイン参加にしたことで
コンピュータ名が下記のように変わったためでした。
「pcname.testdomain.local」

DBサーバのリスナー(listener.ora)で指定しているHOST名を変更し
接続できるようになりました。

LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = pcname.testdomain.local)(PORT = 1521))
)
)

ちなみに、リスナーを変更した場合、リスナー再起動が必要です。

 

[Oracle初心者運用メモ]Oracle勉強会に参加しました

オラクル九州支社様でIT技術者向けのコミュニティを開設されていて
定期的に、オラクル製品に関する技術セミナーを無料で
開催されています。

パフォーマンスチューニングやトラブルシュートなど、
奥が深すぎて独学で理解するのは難しいので、
事例を元になどいろいろな技術の情報を直接聞けるので
とても勉強になります。

できれば、毎回(毎月1回)参加したいところですが
開催場所が少し遠方のため、年に1~2回程度しか参加できて
いません。。

先日は、テーマが「性能トラブル対策ガイド!
オプティマイザ/統計情報収集について」ということで
私にはレベルが高い内容でしたが受講してきました。

Oracle内部で、効率がよい実行計画をたてるために
自動的に統計情報が収集されているので
(ある程度、新しいバージョンのOracleでは)
特に気にする必要はないのですが

どのような情報を収集してどのように実行計画に
活用されているのかを理解することで
適切なタイミングで統計情報が収集されているかを考え、
システムによってはメンテナンスが必要な場合もあるようです。

例えば、11gR2ではデフォルトで、統計情報収集の時間帯が
月~金曜は22時~26時,土~日曜は6時~26時で
設定されていますが、
夜間バッチ処理などで26時以降にデータ量が変動する場合は
統計情報収集の時間帯を夜間バッチ処理以降に変更するなど
検討する必要があったり、
ワークテーブル的なテーブルは統計情報を取集しても意味がない
ということであれば、そのテーブルだけ統計情報収集をとめたりなど
検討する必要もあるようです。

統計情報収集もDBに負担をかけますので。

弊社の開発機用DBサーバも夜10時になると、応答が遅くなるな~
と思いつつ、原因を調査するまでに至ってなかったのですが
おそらく統計情報収集が原因なんだろうなというのが
わかってよかったです。