2009-07-01から1ヶ月間の記事一覧
続・門外不出のOracle現場ワザ (DB SELECTION) で紹介されているスクリプト*1は v$session_wait から情報収集するスクリプトがあるけど、不要な情報が出力される。 $ ./session_wait.sh|sqlplus SQL*Plus: Release 9.2.0.7.0 - Production on Fri Jul 31 22:…
getopt.pl #!/usr/bin/env perl use strict; use warnings; use Getopt::Std; my %opt; # 記号の後に「:」をつけるとオプション引数が取れる。「:」をつけないと「1」が取れる。 getopts("ali:o:" => \%opt); map{print "$_: $opt{$_}\n"} keys %opt; __END_…
初期化パラメータ OPTIMIZER_MODE = RULE の場合。 初期化パラメータ OPTIMIZER_MODE = CHOOSE で、データ・ディクショナリに文がアクセスするどの表の統計も含まれていない場合。 [参考] http://www.oracle.com/technology/global/jp/documentation/product…
全セッション*1のSQLトレースを取得するスクリプトを作ってみた。 [手順] SQLトレース取得を開始する。 SQL> conn / as sysdba SQL> @sqltrace_start.sql SQLトレース取得を停止する。 SQL> @sqltrace_stop.sql SQLトレースの出力先を確認する。 SQL> select…
レスポンスタイムをログの処理開始時と終了時のタイムスタンプを比較して算出するようなときに使うコードサンプル。 msec.pl #!/bin/perl use strict; use warnings; use Time::Local; my $begin = '2009/07/30 11:15:36.180'; my $end = '2009/07/30 11:15:…
びっくりするくらい毎回書き方を忘れるのでメモっておく。 例 perl -e '$s="hogehoge2009";($s1,$s2)=$s=~/^([a-z]+)([0-9]+)$/;print "$s1:$s2\n";' 実行結果 hogehoge:2009
[スタート]-[ファイル名を指定して実行]を選択し、「regedit.exe」と入力し、[OK] をクリックする。 次のレジストリ サブキーを見つけ、クリックする。 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters [編集]- [新規]-[複数業文字…
Oracle のサーバープロセスの通信相手のIPアドレスとポート番号を調べてみた。 コマンド ps -ef|egrep [o]racleorcl|while read LINE do PID=`echo $LINE|perl -lane 'print $F[1]'` PEER=`pfiles $PID|egrep [p]eername` echo $LINE $PEER done 実行結果 or…
$ perl -le 'print for 1..10000' 1 2 ... 9999 10000
github にはあげれないもののあるので。 $ cd /cygdrive/c/git $ mkdir hoge $ cd hoge $ git init Initialized empty Git repository in /cygdrive/c/git/hoge/.git/ $ ls docs src $ git add docs/* $ git add src/* $ git commit -m 'init' [master (root…
レコードセパレータが1つ以上の空行で、レコード内に改行文字を1つ含むデータを1行1レコードに変換する Perl ワンライナー。元のファイル。 $ cat aaa.txt line1 line2 line1 line2 line1 line2 変換する。 $ perl -i.org -00 -pe 's/^(.*)\n(.*)\n+$/$1 $2\…
[参考文献] 門外不出のOracle現場ワザ (DB Magazine SELECTION) P.97-98 STATSPACK は、Oracle8i(リリース 8.1.6)から使用可能になったパフォーマンス診断ツールです。STATSPACK は従来の Bstat/Estat の後継であり、無償のPL/SQLスクリプトとして提供され…
SQL*Plus でデータベースに接続しようとすると ORA-12154 エラーが発生すると言われて調べてみた。 $ sqlplus scott/tiger@orcl ORA-12154 TNS:指定された接続識別子を解決できませんでした 環境変数など調べてみたが無問題。 ふと、SQL*Plus を実行している…
perl -ple "s/([0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}:[0-9]{2})/TO_DATE\(\'\1\',\'YYYYY-MM-DD HH24:MI:SS\'\)/g;" hoge.csv 後方参照って $1 だと思ったけどうまくいかないので、\1 にしたたうまくいった。 パターン内で括弧を使用することで、括…
「"」を「'」に置換しようとして、 perl -ple 's/\"/\'/g' hoge.csv としたら、ダメだったので、 perl -ple "s/\"/\'/g" hoge.csv としたらいけた。 ぐぐってみると、他にもやり方があるみたい。 perl -e '' の中で シングルクオートを書く bash で perl を …
SQL> alter session set current_schema = SCOTT;
Oracle で TO_CHAR を使って数値を前ゼロ埋めにしようと思ったら、 SQL> select 'USER'||to_char(1, '00') name from dual; NAME ------- USER 01 頭にスペースが入った。。。 SQL> select 'USER'||to_char(1, 'FM00') name from dual; NAME ------- USER01 …
http://www.oracle.com/technology/global/jp/software/tech/oci/instantclient/10104/instantclient_win_dl.html から以下をダウンロードする。 instantclient-basic-win32-10.2.0.3-20061115.zip instantclient-sqlplus-win32-10.2.0.3-20061115.zip 解凍…
http://www.geocities.com/kensanata/elisp/ から以下のファイルをダウンロードする。 sql.el sql-indent.el sql-transform.el sql-complete.el master.el ダウンロードしたファイルを C:\meadow3\site-lisp\ に保存する。 .emacs に以下を追記する。 ;;; ;;…
Solaris でプロセスについて調べるときに使えるコマンドをメモっておく。 pfiles ptree truss pargs pgrep 上記以外にも、以下のURLにいろいろ載ってる。 http://docs.sun.com/app/docs/doc/819-1210/pfiles-1?a=view
マニュアルを見る man ls ページャが less の場合 <↑>: 1行上に進む。 <↓>: 1行下に進む。 <PgUp>: 1ページ上に進む。 <PgDn>: 1ページ下に進む。 /検索文字列: 検索する。 q: 終了する。 ページャが more の場合(ページャが less の場合でも使える) h: ヘルプを表示す</pgdn></pgup>…
「-」 + 単語の先頭1文字(伝統的なUNIXのコマンドラインオプション) ls -a 「--」 + 単語(機能が増えて1文字で区別するのが困難になってきたため最近作られたコマンドラインオプション) ls --all ヘルプを表示する ls -h ls --help ヘルプの見方 [] で囲…
n または p オプションを指定すると Perl はデフォルトで1行ずつ読み込む。OSで固有に定義されている入力レコードセパレータを使って各行の終わりを検出する。-0digits オプションを使うとレコードセパレータ(レコードの区切り)を変更することができる。 …
負荷テストは性能要件を満たすことを確認するテスト。 要件(requirement)には機能要件(functional requirement)と非機能要件(non-functional requirements)がある。 性能要件は非機能要件の一つ。 非機能要件には性能要件、障害対策要件、セキュリティ要件、…
良すぎるキャッシュヒット率に注意 一部のデータにしかアクセスしない場合、全データがキャッシュに載り、良すぎるキャッシュヒット率が計測される。 キャッシュの状態を適切に再現する キャッシュの状態を適切に再現するためにテスト手順、テストデータ、テ…
何の絵かわからんけどw。アンパンマンかお魚かたまごか。。。それともドキンちゃんかな?
github を使うために Cygwin をインストールしたので、Meadow3 から Cygwin を使う設定をしてみた。 PATH環境変数の先頭に以下を追加する [スタート]>[マイコンピュータ]>[プロパティ]>[詳細設定]>[環境変数]>[システム環境変数] C:\cygwin\bin;c:\cygwin\sb…
github にリポジトリを作成したのと別のマシンからファイルを作成したり削除したりしようとしたけど、ローカルリポジトリは変更できるが、github に同期できないので、一旦ローカルリポジトリを削除してやり直してみた。 Cygwin を起動する。 ローカルリポジ…
[まとめ] 制御ファイルを全損した場合、以下の2つのリカバリ方法がある。 物理バックアップ*1を使ったリカバリ 論理バックアップ*2を使ったリカバリ いずれの方法でも障害発生直前までリカバリできる。つまり、オンラインREDOログの最後のcommit済みREDOエン…
/etc/group から groupadd コマンドを生成する。 $ perl -lanF':' -e 'print "groupadd -g $F[2] $F[0]"' /etc/group groupadd -g 501 oinsatll ... /etc/passwd から useradd コマンドを作成する。 $ perl -lanF':' -e 'print "useradd -u $F[2] -g $F[3] -…