ablog

不器用で落着きのない技術者のメモ

2010-05-01から1ヶ月間の記事一覧

パーティション表のあるパーティションのデータを消してインポートし直す方法

4月分のデータを削除して、 $ sqlplus scott/tiger SQL> delete from log where dl_date between to_date('2010-04-01','YYYY-MM-DD') and to_date('2010-04-30', 'YYYY-MM-DD'); SQL> commit; SQL> exit 4月分のデータをいんぽる。 $ nohup impdp scott/tig…

Oracle Database 10g で削除されたテーブルを確認する

set pagesize 50000 set linesize 300 col object_name for a30 col original_name for a30 col operation for a20 col type for a20 col droptime for a20 select object_name,original_name,operation,type, droptime from user_recyclebin order by dropt…

あるディレクトリ以下の CSV ファイルをコンカチして最初の列にファイル名を入れる Perl ワンライナー

テストデータを作って、 yoheia% for i in {1..10} for% do for% perl -le 'print join(q/,/,(1..10))' >`printf "%02d" $i`.tsv for% done yoheia% ls 01.tsv 02.tsv 03.tsv 04.tsv 05.tsv 06.tsv 07.tsv 08.tsv 09.tsv 10.tsv yoheia% cat * 1,2,3,4,5,6,7…

php: error while loading shared libraries: libclntsh.so.10.1: cannot open shared object file: No such file or directory

現象 $ php -v php: error while loading shared libraries: libclntsh.so.10.1: cannot open shared object file: No such file or directory 対応 $ su - # usermod -G oinstall,dba foo $ su - foo $ vi ~/.bash_profile # for oracle export LANG=C expo…

PL/SQL: ORA-00942: table or view does not exist

Package Body をコンパイルすると、 SQL> conn smith/smith SQL> @FOO_PKG.SQL Warning: Package Body created with compilation errors. エラーの内容を確認してみると、 SQL> show errors Errors for PACKAGE BODY FOO_PKG: LINE/COL ERROR -------- -----…

コード対応表から Perl ワンライナーでファイル対応表を生成してそれらのファイル diff をとってみた

perl -F, -lane '$F[4]=~s/(^"|"$)//g;print qq/ro\/CD000001$F[0]201003.dat rs\/201003_$F[4].dat/' list.csv|while read LINE;do diff -q $LINE;done

PHP 4.4.8 インストール手順

libiconv をインストールする。 mkdir -p /usr/local/src/libiconv cd /usr/local/src/libiconv wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.10.tar.gz wget http://www2d.biglobe.ne.jp/~msyk/software/libiconv/libiconv-1.10-ja-1.patch.gz tar…

ディレクトリのリストを元にディレクトリを作成する

誰かにこんなディレクトリを作ってとリストをもらったとする。 a/b/c/1 a/b/c/2 d/e/f/1 d/e/f/2 g/h/i/1 g/h/i/2こんな具合に $ cat <<EOF|xargs mkdir -p > a/b/c/1 > a/b/c/2 > d/e/f/1 > d/e/f/2 > g/h/i/1 > g/h/i/2 > EOF やってみると、 $ find . -ls 680864 4 drwxr-xr-x </eof|xargs>…

Oracle のインストーラを解凍する

zip がたくさんあって一つ一つ解凍するのが面倒なので、こんな感じでやってます。 $ ls -1 B24792-01_1of5.zip B24792-01_2of5.zip B24792-01_3of5.zip B24792-01_4of5.zip B24792-01_5of5.zip $ ls|xargs -n1 unzip > /dev/null & $ ls -1 B24792-01_1of5.z…

Linux のカーネルパラメータの確認と設定

Linux に Oracle Database をインストールするときにやるやつです。 rmem_default # /sbin/sysctl -a | grep rmem_default rmem_max # /sbin/sysctl -a | grep rmem_max インストール前の作業 みたいに何回もコマンド打つのは面倒なので、こんな感じでやって…

fswiki からはてなに移行したときに使った Perl ワンライナー

yoheia% curl 'http://yohei-a.fswiki.com/wiki/Oracle+11g+RAC%B9%BD%C3%DB%BC%EA%BD%E7&action=SOURCE' > wiki.txt yoheia% perl -pe 's/^\s*$//g;s/^\*\*\*/---/g;s/^\*\*/--/g;s/^\*/-/;s/^!!!/\*\*/g;s/^!!/\*\*\*/g;if(/^\s/ and $b==0){print qq/\n>|…

Oracle 11gR1 3node RAC on RHEL 構築手順

fswiki から移行してみた。

DTrace で Oracle Database のサーバー・プロセスをトレースしてみた

2010-03-22 - 未来のいつか/hyoshiokの日記 第102回カーネル読書会 に行ってきて、DTrace を使ってみようと思ってもう 2 ケ月近くすぎた。 やっと使ってみた。 sqlplus でログインして、 $ sqlplus / as sysdba SQL*Plus: Release 10.2.0.4.0 - Production o…

PROFILE を変更する

SQL> select * from dba_profiles PROFILE RESOURCE_NAME RESOURCE LIMIT ------------------------------ -------------------------------- -------- ---------------------------------------- DEFAULT COMPOSITE_LIMIT KERNEL UNLIMITED DEFAULT SESSION…

Oracle のシーケンスをカウントアップする

SQL> select sequence_name, last_number from user_sequences where sequence_name = 'HOGE_SQ'; SEQUENCE_NAME LAST_NUMBER ------------------------------ ----------- HOGE_SQ 100160 SQL> drop sequence hoge_sq; SQL> create sequence hoge_sq increm…

特定のスキーマだけオプティマイザ統計情報を自動収集する

ディレクトリ・ファイル構成 $ su - oracle $ crontab -l 30 8 * * * /usr/local/mis/bin/exec_sql/gather_stats.sh exec > /dev/null 2>&1 $ cd /usr/local/mis/bin $ ls -l total 16 -rw-rw-r-- 1 root root 772 Apr 13 08:12 common.conf -rw-rw-r-- 1 ro…

ORA-00030: User session ID does not exist.

SQL> alter system kill session '186, 12353' ERROR at line 1: ORA-00030: User session ID does not exist. v$session を見ると、SERIAL# が変わってたので、 SQL> alter system kill session '186, 23372'; System altered. としたら、別のセッションが …

Oracle LOVERS 勉強会 第20回 w/ 小田圭二 に行ってきた!

Oracle LOVERS 勉強会 第20回 w/ 小田圭二 2010年5月8日 東京都 | DBならOracleでしょ♪ | mixi Oracle LOVERS 勉強会 第20回 w/ 小田圭二 に行ってきた! 小田さんから参加者への質問、参加者から小田さんへの質問、小田さんと参加者との座談会があったり、…

Data Pump で import を停止して、後で再開する

インポートを開始する $ nohup impdp system/manager directory=pump_dir exclude=grant dumpfile=scott.dmp remap_schema=scott:smith parallel=4 > scott.log 2>&1 & インポートを停止する ジョブ名を確認する。 $ sqlplus / as sysdba SQL> set linesize …

ORA-02449: unique/primary keys in table referenced by foreign keys

SQL> drop table emp purge; drop table emp purge * ERROR at line 1: ORA-02449: unique/primary keys in table referenced by foreign keys SQL> drop table emp cascade constraints; Table dropped.

通信できないと思ったら、ifcfg-eth0 の ONBOOT が no になっていた

現象 他のホストと通信できない。 eth0 に割当てた自分のIPアドレスに ping が通らない。 原因 /etc/sysconfig/network-scripts/ifcfg-eth0 の ONBOOT が no になっていた。 # cat /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0 BOOTPROTO=static …

某ETLツールから Oracle に FQDN で接続できなかった件

環境 Oracle は Active/Standby の HA 構成。 Virtual IP は使っていない。 スイッチオーバーする際は、DNS を書き換えるので、アプリケーション側の接続文字列は変更不要。 本現象が発生する少し前に、Standby 側にスイッチオーバーしており、本現象が発生…

Oracle に接続だけ行う Java プログラム

こんなファイルがあって、 > dir /b build.bat ConnectionTester.bat ConnectionTester.class ConnectionTester.java ojdbc14.jarコンパイルして、 > build.bat実行すると、 > ConnectionTester.bat orcl db01こんな感じ。 ソースコードは以下の通り。 Conne…

ORA-02270: no matching unique or primary key for this column-list

現象 外部キーを作成しようとすると、ORA-02270 が発生する。 SQL> alter session set current_schema = "scott"; SQL> alter table foo add constraint foo_bar_fk1 foreign key (bar) references bar (id) on delete set null enable; error at line 1: or…

JDBC Thin Driver のデバッグ

id:takabow に教えてもらったのでメモメモ。 @yoheia JDBCのトレースはバージョンによって若干の差異がありますが、 http://otndnld.oracle.co.jp/document/products/oracle11g/111/doc_dvd/java.111/E05720-02/diagnose.htm http://twitter.com/takabow/sta…