select username , sid , serial# from v$session;
で特定し、
alter system kill session '<上記sid>,<上記serial#>';
でシグナル送信。
select username , sid , serial# from v$session;
で特定し、
alter system kill session '<上記sid>,<上記serial#>';
でシグナル送信。
UNIX系OS上でOracleをインストールした場合、基本的にはインストールしたOSユーザでしかSQL*Plus等のユーティリティを実行できない。
別のOSユーザから上記Oracleユーティリティを使いたい時は、
1.Oracleソフトウェアをインストールしたユーザのグループに入れてやる
2.changePerm.shシェルを実行してパーミッションの設定を変えてやる
をしなければならない。と思った。
1番目が一番楽な気がしますが、インフラチームで明確にOSユーザを設定してあると何かと面倒だしプロジェクトのセキュリティポリシー等で引っかかったり…。
なので、そういう場合は2で対処。
どちらも、ユーザの環境変数は設定しなければならない(ORACLE_SIDとかORACLE_BASEとか。PATHもやると便利かな、と)。
changePerm.shは、$ORACLE_HOME/installの下にあったと思います。
Oracleのマニュアルでは、HPか何かの『管理者リファレンス』に記載されていたと思いますがその他は未確認です。
Oracle ORIONという、データベースへ疑似的なトランザクションを発生させて
ディスクに関するパフォーマンス情報を提供してくれるツールがあるようです。
http://www.oracle.com/technology/software/tech/orion/index.html
上記からダウンロード可能。
使ったことがないので分かりませんが、ディスクデバイスを設定ファイルに記述
して実行するとシーケンシャルI/OやランダムI/Oを生成してくれるとか。
使ったことがなく、よく分からないので今度遊んでみようと思います…。
たまにOracleさんからお電話頂くんですが、これって営業として入社した方の研修の一環なんでしょうか?
大体が新規にOracleを導入する予定がありますか?みたいな感じなんですが、皆さん非常にたどたどしくて…。
何がどうとか言うわけじゃないのですが、なんとなく気になったもので。
今日は『Ask Tom』に行ってきます!!
非常に楽しみです。
パフォーマンスが悪化しているシステムの原因がSQLにある事を前提とした、Statspackを用いたチューニング概要資料を会社の勉強会の為に作成中…。
最近知ったのですが、Oracle 9i辺りから使える機能に「仮想インデックス」というものがあるのですね。
セグメントは使用しないが、メモリ上には乗っててalter session文で隠しパラメータをセットすると使用できるっていう。
ちょっとインデックス張って効果を試したいって場合には有用かもしれません。
詳しい情報は「virtual index」とかでググると出てきます。
Oracleでフィジカルスタンバイのデータガード構成を取っているとき、プライマリ側でログイン時にパスワードを失敗したログがスタンバイ側に適用されると、スタンバイ側ではそのログインに失敗したユーザでアクセスできない。
これは、ログイン成功時にパスワード失敗入力回数を0に戻す処理が走るが、スタンバイ側が読み取り専用になっているので0に戻せず怒られてしまうことによる。
同様に、expdp/impdpも読み取り専用のDBに対して実行した場合内部のデータを更新しようとするが怒られて出来なかったりする。
ログインに関するものは、プライマリ側で正しくログインし、そのログをスタンバイ側に適用してやることで解決。
expdp/impdpについては解決策があるのか不明。
どなたか知ってたら教えて下さい。
SQL*Plusにて、「-S」オプション時の挙動が9iと10g以降で違う。
ナニが違うかというと、connect後、9iでは「Connected」の文字が出力されるが10g以降だとされない。