1 :
NAME IS NULL :
2012/01/09(月) 10:56:52.65 ID:QPgumWaJ
Oracleが2をゲット
3 :
NAME IS NULL :2012/01/09(月) 14:14:58.81 ID:8po/85zC
安藤優子、木村太郎は、某プロパイダの社外取締役、かつ、安藤は、フジ社外の人間にもかかわらず、フジテレビジョンのM&Aの最中、フジのホワイトナ イトの【親会社】の本業を無視して、「インターネットは虚業だ。具体性がない 。」というようなことをコメントしました。この虚業は、livedoorを指していた としても、「同業者」であったということは、非常に、違和感を感じずには、い られません。
";" と "/" ってどう違うの?
>>4 今後はマニュアルをお読みください。
SQL*Plusの場合
";"
・ 単一SQL文の終端
・ PL/SQLの構文終端
"/" (行先頭に"/"のみを書いた場合と仮定)
・ PL/SQLブロックの終端
・ RUNコマンドのalias
なんで引数なしのDelete でみんな消えるの?
普通 アスタリスクだろ select の時はアスタリスクじゃねーか
と思ったらあれはカラムだった。
引数って何の話してんだ?
selectするとき*より必要な列を指定したほうが早いの?
>>10 早い遅いでいえば、変わらんでしょ。
*でも列指定でも内部的なアクセスブロック数は変わらないし。
前提条件が少なすぎるので答えはない インデックスだとブロック数は変わるし
必要な列数が全列数より少ない場合、特定の条件下では速くなる
>>12 あー、確かに、インデックスアクセス時に、列指定すれば、テーブルにアクセスしなくていいようなケースだったら、列指定でアクセスブロック数少なくなるね。
ケースバイケースだな。
出力可否でも速度は変わる 何の速度によるかだが
対象行が少ないなら、無視可能な範囲でしか変わらないでしょ
おいおい お前ら、ネットワークリソースのことも考慮に入れろよw
アプリケーションからフェッチしてメモリ格納する際の速度も 視野に入れるとしたら、やっぱ列指定のほうが早いのでは?
設問の曖昧さも視野に入れようよ
サーバー上のバッチならネットワークは関係ない。
だがちょっと待って欲しい。 もしかしたら使っているのはExadataだったのかも知れない。
>>21 他のサーバ上のDBを参照している場合も考慮しろよな
2層のシステムなんてそうそうないだろ
今なんかLinux Serverとか安くなっているから、バッチ専用のサーバーとか 立てている所とかあるぞ。 あとはアプリケーションサーバー側からバッチ走らせていたりとかな。 ExadataだとComputeノードから処理をCellサーバー側にオフロード化させて、 Infiniバンド経由で結果セットを返したりとかだな。
APサーバーでバッチ処理って作りはやめてほしいわ
NoSQL製品出す前に ちゃんとスケールするRDBを作れよ
あ、はい。
ISAM時代に逆戻り
あーSHAZNAのボーカルね
>>31 が暇人のツッコミを待っていますのでどなたかどうぞ
PL/SQLのDBMS_OUTPUT.PUT_LINEって 1行の長さ制限ってあります? どうも512文字を超えるとエラーになるようにみえるんですが。 DBの内容を編集しつつ、テキストファイルに落としたいんだが、 最大で1行8000文字になるんですよね。 プログラムから呼び出して編集する方法を考えるしかないのかなぁ。
>>34 Oracle10gか11gだけど、AIXで動いてるやつです。
substrで512文字以下に区切ると、うまく通るので、
やっぱり行の長さとしか考えられんす。
今更なんだけど、プロシージャ実行の途中でバッファの内容を出力する方法 ってあんの?いつも実行終了後にどばぁって出力されるんだけど。
>>33 素直にUTL_FILE使ったほうがいいと思うけど。
それか、sqlplusから出力させるか。
>>37 もともとTeratermで接続してsqlplusで出力させて、
テキストデータを回収する予定でした。
そのためのPUT_LINEです。
UTL_FILEはDBサーバ側にファイルが作られそうなので、
ちょっとまずそうです。
しょうがないので、Excel VBAか、perlの使用を検討中。
>>38 諦めるのも一つの選択だけど少なくともバージョンとsqlplusで
show serveroutput
の結果を晒すべきではないかと思う
スレ違いだったらすみません。 2月からデータベースになるのですが、難しいですか? 入社1年目でデータベースはORACLEで5台セットのようです。 コツなどあれば教えて欲しいです。宜しくお願いします。
人柱か・・・・
>>39 すみません、職場のPCの話なので詳細を報告するのは難しいです。
sqlplusは
set serveroutput on size 1000000
くらいで設定しています。(最大値)
その上で出ているエラーです。
アドバイスありがとうございました。
>>40 20年くらいひたすらデータベースのことだけ考えてたら、いつかデータベースになれる日がくるんじゃないか?
>>40 データベースになるのか・・・。
周りの人とはやっぱりSQLで会話する事になるのかな・・・?
10万行の結果とか返すの大変そう・・・。
>>40 まあ、真面目な話、DBAになるのならちゃんとトレーニング受けさせて貰え。
覚えることがかなりあるから、時間がかかるかも知れないがな。
>>42 例えば LINESIZE が 512 のとき SERVEROUT の FORMAT が TRUNCATED なら各行512文字で切り捨てられる
ORACLEで5台セットっていう表現がモヤっとする
すみません。質問なんですがoracle 11.2.0.2のLinux サーバーで2つ目のインスタンスを作成した後、DBにアクセスしたところora- 12547のエラーが出て、DBにアクセス出来ませんでした。 どなたか原因に心当たりありませんか?
>>40 のようなのもそうだけど、どこの会社もデータベースの設計や構築に力を入れてないのがよく解る。
インフラ技術者が多くても、
パフォーマンス遅い、データが溢れました、バックアップ取れてませんでした
ってのが多過ぎるよな。
>>48 1つ目のインスタンスへはアクセス出来たの?
>>50 はい、できてます。
2つ目のインスタンスにアクセスしようとするとエラーが出ている状況です。
>>51 ローカル接続?リスナー経由の接続?
初回ログインができない?それとも途中で接続がきれる?
>>52 リスナー接続になります。
sqlplus起動後の初回ログイン時にエラーが発生し、ログインできないじょうたいです。
>>49 恥を忍んで言いますが。
某小売(東1上場)の基幹システムのテーブル設計をやったの俺だけど、設計当時
パーティションの概念が全く無くて何も考えてなかった。さすがにINDEXの知識
はあったけど。
今、パーティション化されてないテーブルにレコードが4億件入ってて、もうど
うにも出来ない状態。ちなみにこのシステムはバックアップなんか取って無い。
テーブル事に日々差分を取らなくていいんすかね?て上位会社のSEに言ったら、
それが必要がどうかは設計者が個々に考えろって言われた・・・
55 :
NAME IS NULL :2012/01/15(日) 10:01:41.51 ID:iMO9iSY4
>>54 とりあえずパーティショニングオプション買ってパーティション化すれば?
1.対象テーブルexp
2.テーブル削除
3.パーティション表作成
4.対象テーブルimp
性能の大幅改善という名目でリプレイスだな。
>>48 環境変数ORACLE_SIDを変えてないだけとか
>>48 O/Sのリソース不足。
メモリとか使いきってたりとかしてないか?
>>56 ORACLE_SIDはインスタンスごとに替えてました。
状況としてAインスタンスへのアクセスはoracleユーザ、Bインスタンスへのアクセスはxxxユーザと切り替えてアクセスしようとしています。
dbcaでのインスタンス作成時に2つのインスタンスともAユーザで実施しましたが、インスタンス作成時にもユーザを切り替える必要がありますでしょうか?
>>58 dbサーバローカルから、リスナー経由でアクセスしようとしているってこと?
oracleユーザの話なのか、osアカウントの話してるのか今一わからん。
60 :
NAME IS NULL :2012/01/15(日) 11:07:05.19 ID:iMO9iSY4
>>58 対象インスタンスのリスナー起動してる?ポート番号重複は?
こういう質問の仕方する人って自分の使ってる環境を書かなくても みんな知ってるって思い込んでるんじゃないかと思う
62 :
NAME IS NULL :2012/01/15(日) 11:15:22.91 ID:iMO9iSY4
>>61 確かにね。
質問の仕方ってベンダサポート受ける時も重要。質問の内容でそのユーザのレベルが分かるから
ユーザのレベルが低いとサポート側もナメた対応してくるところ多い。
>>49 おまえ設計とか分かってるの?
一般的な運用設計項目あげてみ?(大見出しだけでいいから
と言う感じで誘導して答えを引き出そうとしている訳ですねわかります
>>55 いや、パーティションのオプションは最初から入ってた。
単に俺(というかうちのメンバ全員)が「パーティション?それ美味しいの?」
てレベルだっただけ。2次開発以降に設計したテーブルは極力パーティション化
してるよ。
ちなみに24時間オンラインからも参照してるんで負荷かけられないし、dumpは
恐らく100GB程度になるだろうし、対象テーブル丸ごとexpとか無理ですから。
3年で4億だから、あと4年放置したらどうなるかもう考えたくない。(しかも
店舗数は今後も増える予定だし)
多分リプレースまでこのまま放置だと思うけど、リプレース時のデータ移行で
また死ぬと思うわ。
環境情報が不足しており申し訳ありません。 ユーザはOSユーザのことです。 ポートの重複については検討し、listenr.oraにポートを分けて記載してました。 ただ、インスタンスごとにリスナーを分けておらず、上記のリスナーファイルに ポートを分けて記載しておりました。以下の記載です。 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = localhost.localdomain)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = localhost.localdomain)(PORT = 2000)) ) ) SID_LIST_LISTENER = (SID_LIST = (SID_DESC = (GLOBAL_DBNAME = oracle) (ORACLE_HOME = /opt/oracle/app/oracle/product/11.2.0/db_1) (SID_NAME = oracle) ) (SID_DESC = (GLOBAL_DBNAME = instanse2) (ORACLE_HOME = /opt/oracle/app/oracle/product/11.2.0/db_1) (SID_NAME = instanse2) ) ) +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ またOSユーザであるoracleユーザでBインスタンスへはアクセスできておりました。
OSユーザでOracleにアクセス?
68 :
NAME IS NULL :2012/01/15(日) 11:46:52.51 ID:iMO9iSY4
>>66 OS上でsqlplus使ってoracleユーザだと両インスタンスへ接続が可能ということ?
で別のOSユーザでBインスタンスへsqlplusで繋ごうとして接続できないとういうこと?
>>66 ついでに、tnsnames.oraもさらしてみようか。
あと、sqlplusで接続するときの引数もね。
70 :
NAME IS NULL :2012/01/15(日) 11:59:42.99 ID:iMO9iSY4
>>65 よくパフォーマンス維持できてるな
クレームの嵐になる前に上司にはアラート上げておいた方がいいぞ。
(自分の身を守るためにも)
しかしバックアップ取ってないとか考えられない・・・
というかやばい、やばすぎる。
おれがエンドユーザだったら構築・運用ベンダ即刻切るレベル。
OSユーザの見解については
>>68 の方のご認識の通りです。
(わかりにくくてすみません。)
tnsnames.oraは以下の通りです。
++++++++++++++++++++++++++++++++++++++++++++++++++++
# tnsnames.ora Network Configuration File: /opt/oracle/app/product/db_1/network/admin/tnsnames.ora
# Generated by Oracle configuration tools.
ORACLE =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost.localdomain)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = oracle)
)
)
INSTANSE2 =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost.localdomain)(PORT = 2000))
)
(CONNECT_DATA =
(SERVICE_NAME = instanse2)
)
)
++++++++++++++++++++++++++++++++++++++++++++++++++++
sqlplusへの接続時の引数は$ORACLE_HOME/bin配下にて
./sqlplus起動後、
Enter user-name: sys as sysdba
Enter password: sysユーザのパスワード を入力しております。
認識に相違ありましたら申し訳ありません。
>>70 DB丸ごとのbackupは取ってる、と聞いた気がする。TBL単位で日々は取って無い。
それを取るのは運用の仕事ではないらしい。
過去に一度、バグで誤った削除をしてしまった事があるけど、TBLのバックアップが
無いので元に戻せなくて、大問題になった事がある。
パフォーマンス?
Web画面からデータ検索したら返ってくるまでに10分以上かかりますが何か?
よく客がキレないよな。不思議だ。
73 :
NAME IS NULL :2012/01/15(日) 12:23:34.31 ID:iMO9iSY4
>>71 >>sqlplusへの接続時の引数は$ORACLE_HOME/bin配下にて
./sqlplus起動後、
Enter user-name: sys as sysdba
Enter password: sysユーザのパスワード を入力しております。
これってOS上で実行してるんだよね?
その際環境変数ORACLE_SID=instanse2にしてるの?
Linux環境だとして
xxxユーザで
1.
export ORACLE_SID=instanse2
2.
sqlplus "/ as sysdba"@INSTANSE2
これでどうなの。
74 :
NAME IS NULL :2012/01/15(日) 12:29:12.92 ID:iMO9iSY4
>>72 >>それを取るのは運用の仕事ではないらしい。
客との契約の問題なんだろうか。テーブル単位はアプリ側で取っておくとか。
通常パフォーマンス面でもアプリケーション毎にレスポンスxx秒以内とか契約してるもんだがな・・・
メンテさせてもらいたいわ。いい小遣い稼ぎになりそう。
10分→10秒とかに改善したら客も喜ぶだろうに。
>>73 ご指摘いただき有難うございます。
以下、インラインにて失礼します。
>xxxユーザで
>1.
>export ORACLE_SID=instanse2
>
>2.
>sqlplus "/ as sysdba"@INSTANSE2
>
上記のコマンドを実施した結果、以下の通りとなりました。
++++++++++++++++++++++++++++++++++++++++++++++++++++++++
$ ./sqlplus "/as sysdba" @INSTANSE2
SQL*Plus: Release 11.2.0.2.0 Production on Sun Jan 15 12:28:23 2012
Copyright (c) 1982, 2009, Oracle. All rights reserved.
ERROR:
ORA-12547: TNS:lost contact
Enter user-name:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++
ps -ef | grep ora の結果、INSTANSE2側のプロセスも起動しているため
インスタンス自体は起動しているようですが・・・
76 :
NAME IS NULL :2012/01/15(日) 12:46:58.03 ID:iMO9iSY4
>>75 じゃあ
./lsnrctl services
./lsnrctl status listener
の結果は?
>>76 コマンドの結果ですが長くなりそうなので、2回に分けて記載させていただきます。
(見辛かったらすみません)
@./lsnrctl services の結果は以下の通りです。
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
$ ./lsnrctl services
LSNRCTL for Linux: Version 11.2.0.2.0 - Production on 15-JAN-2012 12:55:32
Copyright (c) 1991, 2009, Oracle. All rights reserved.
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost.localdomain)(PORT=1521)))
Services Summary...
Service "instanse2" has 2 instance(s).
Instance "instanse2", status UNKNOWN, has 1 handler(s) for this service...
Handler(s):
"DEDICATED" established:0 refused:0
LOCAL SERVER
Instance "instanse2", status READY, has 1 handler(s) for this service...
Handler(s):
"DEDICATED" established:91 refused:0 state:ready
LOCAL SERVER
Service "instanse2XDB" has 1 instance(s).
Instance "instanse2", status READY, has 1 handler(s) for this service...
Handler(s):
"D000" established:0 refused:0 current:0 max:1022 state:ready
DISPATCHER <machine: localhost.localdomain, pid: 7275>
(ADDRESS=(PROTOCOL=tcp)(HOST=localhost.localdomain)(PORT=50434))
Service "oracle" has 2 instance(s).
Instance "oracle", status UNKNOWN, has 1 handler(s) for this service...
Handler(s):
"DEDICATED" established:0 refused:0
LOCAL SERVER
Instance "oracle", status READY, has 1 handler(s) for this service...
Handler(s):
"DEDICATED" established:96 refused:0 state:ready
LOCAL SERVER
Service "oracleXDB" has 1 instance(s).
Instance "oracle", status READY, has 1 handler(s) for this service...
Handler(s):
"D000" established:0 refused:0 current:0 max:1022 state:ready
DISPATCHER <machine: localhost.localdomain, pid: 6877>
(ADDRESS=(PROTOCOL=tcp)(HOST=localhost.localdomain)(PORT=61566))
The command completed successfully
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
続きます。
78 :
77 :2012/01/15(日) 13:07:50.61 ID:???
以下、続きになります。 A./lsnrctl status listenerの結果は以下の通りです。 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ $ ./lsnrctl status listener LSNRCTL for Linux: Version 11.2.0.2.0 - Production on 15-JAN-2012 12:54:27 Copyright (c) 1991, 2009, Oracle. All rights reserved. Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost.localdomain)(PORT=1521))) STATUS of the LISTENER ------------------------ Alias LISTENER Version TNSLSNR for Linux: Version 11.2.0.2.0 - Production Start Date 15-JAN-2012 10:52:27 Uptime 0 days 2 hr. 2 min. 0 sec Trace Level off Security ON: Local OS Authentication SNMP OFF Listener Parameter File /opt/oracle/app/product/db_1/network/admin/listener.ora Listener Log File /opt/oracle/app/diag/tnslsnr/localhost/listener/alert/log.xml Listening Endpoints Summary... (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=localhost.localdomain)(PORT=1521))) (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=localhost.localdomain)(PORT=2000))) Services Summary... Service "instanse2" has 2 instance(s). Instance "instanse2", status UNKNOWN, has 1 handler(s) for this service... Instance "instanse2", status READY, has 1 handler(s) for this service... Service "instanse2XDB" has 1 instance(s). Instance "instanse2", status READY, has 1 handler(s) for this service... Service "oracle" has 2 instance(s). Instance "oracle", status UNKNOWN, has 1 handler(s) for this service... Instance "oracle", status READY, has 1 handler(s) for this service... Service "oracleXDB" has 1 instance(s). Instance "oracle", status READY, has 1 handler(s) for this service... The command completed successfully $ ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 長文になってしまい、申し訳ありません。
79 :
NAME IS NULL :2012/01/15(日) 13:27:52.30 ID:iMO9iSY4
ちなみに >xxxユーザで >1. >export ORACLE_SID=instanse2 > >2. >sqlplus "/ as sysdba"@INSTANSE2 > 上記をoracleユーザで実行すると接続できてるんだよね? oracleユーザとxxユーザでの以下実行結果は? id
Instance 2のalert.logにORA-600とか7445とか出ていないか? 2つのインスタンスのmemory_targetの値がO/Sのメモリーを食いつぶしていたりとか していないか? 試しにインスタンス1落として、インスタンス2だけ起動してつなげてみ? それで繋がるのならO/Sのリソース不足だ。 もしかしたらSwapspaceをマウントし忘れていたりとかかもな。
>>79 ご指示ありがとうございます。idコマンドの結果は以下の通りです。
・oracleユーザ
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
$ id
uid=502(oracle) gid=504(oinstall) 所属グループ=503(dba),504(oinstall) context=root:system_r:unconfined_t:SystemLow-SystemHigh
$
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
・xxxユーザ
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
$ id
uid=505(xxx) gid=504(oinstall) 所属グループ=503(dba),504(oinstall) context=root:system_r:unconfined_t:SystemLow-SystemHigh
$
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
>>81 取り敢えず、selinux無効にしてみたら、状況かわらないかな?
ulimit -aの値は?
oracleユーザとxxxユーザ で、TNS_ADMIN とかいう環境変数に 違いがあったりしないか?
xxxユーザにtnsnames.oraを読むためのread権限がないとか。
oracleユーザはdbaグループに所属してるから、 実はリスナー経由じゃなく、ローカル接続で両インスタンスに接続できていた とかいうことはないのかな? (つまり、oracleユーザであってもリスナー経由だと接続できないとか)
>>71 ほんとにこのままの手順でやって同じエラーでてるなら、ローカル接続してるから、リスナー系のファイル設定は関係ないと思われる。
まさかとは思うが、xxxユーザにORACLE_HOME環境変数が設定されてないという オチはないよな?
>>88 ORACLE_HOME設定されてなかったら、違うエラーになると思う。
自宅の環境で試してみたけど、同じような設定しても普通に接続できるから、OS周りの設定がおかしい気がする。
ちなみにスタックサイズ制限を意図的に小さくしたら同じエラーでた。11.2.0.1だけど。
>>各位 皆様、すみません。以下、確認結果になります。 @ulimit -aの結果 コマンドの実行結果は以下の通りです。 - oracleユーザ $ ulimit -a core file size (blocks, -c) 0 data seg size (kbytes, -d) unlimited scheduling priority (-e) 0 file size (blocks, -f) unlimited pending signals (-i) 24543 max locked memory (kbytes, -l) 32 max memory size (kbytes, -m) unlimited open files (-n) 1024 pipe size (512 bytes, -p) 8 POSIX message queues (bytes, -q) 819200 real-time priority (-r) 0 stack size (kbytes, -s) 10240 cpu time (seconds, -t) unlimited max user processes (-u) 16384 virtual memory (kbytes, -v) unlimited file locks (-x) unlimited - xxxユーザ $ ulimit -a core file size (blocks, -c) 0 data seg size (kbytes, -d) unlimited scheduling priority (-e) 0 file size (blocks, -f) unlimited pending signals (-i) 24543 max locked memory (kbytes, -l) 32 max memory size (kbytes, -m) unlimited open files (-n) 1024 pipe size (512 bytes, -p) 8 POSIX message queues (bytes, -q) 819200 real-time priority (-r) 0 stack size (kbytes, -s) 10240 cpu time (seconds, -t) unlimited max user processes (-u) 24543 virtual memory (kbytes, -v) unlimited file locks (-x) unlimited ATNS_ADMIN 環境変数の設定 申し訳ありません。こちらの設定は現状、未実施の状態です。 設定しております環境変数は以下の通りです。 ・ORACLE_BASE /opt/oracle/app ・ORACLE_HOME /opt/oracle/app/product/db_1 ・DISPLAY :0.0 続きます
91 :
90 :2012/01/15(日) 15:01:58.91 ID:???
90の続き Aについて一部誤りがありました。(焦ってORACLE_HOMEの記載を誤ってしまいました) 申し訳ありません。正しくは以下の通りです。 ・ORACLE_BASE /opt/oracle/app ・ORACLE_HOME /opt/oracle/app/oracle/product/11.2.0/db_1 ・DISPLAY :0.0 Btnsnames.oraへの権限は以下の通りです。 読み込み権限はあると認識しておりました。 # ls -al 合計 128 drwxrwxr-x 3 oracle oinstall 4096 1月 15 10:50 . drwxrwxr-x 11 oracle oinstall 4096 1月 9 13:15 .. -rwxrwxr-x 1 oracle oinstall 698 1月 15 10:50 listener.ora -rwxrwxr-x 1 oracle oinstall 321 1月 15 02:28 listener.ora_bk -rwxrwxr-x 1 oracle oinstall 800 1月 15 02:56 listener.ora~ -rwxrwxr-x 1 oracle oinstall 840 1月 15 10:22 listener12011510午前2235.bak -rwxrwxr-x 1 oracle oinstall 840 1月 15 10:23 listener12011510午前2305.bak -rw-r--r-- 1 oracle oinstall 482 1月 15 10:40 listener12011510午前4029.bak -rwxrwxr-x 1 oracle oinstall 698 1月 15 10:50 listener1201152午前5212.bak -rw-rw-r-- 1 oracle oinstall 698 1月 15 02:52 listener1201152午前5212.bak~ drwxrwxr-x 2 oracle oinstall 4096 1月 9 12:55 samples -rwxrwxr-x 1 oracle oinstall 187 5月 9 2007 shrept.lst -rw-r--r-- 1 oracle oinstall 525 1月 15 10:42 tnsnames.ora -rwxrwxr-x 1 oracle oinstall 579 1月 15 10:22 tnsnames12011510午前2235.bak -rwxrwxr-x 1 oracle oinstall 579 1月 15 10:23 tnsnames12011510午前2305.bak -rwxrwxr-x 1 oracle oinstall 579 1月 15 02:52 tnsnames1201152午前5212.bak ※お見苦しくて、申し訳ありません。
Swap領域とメモリーも知りたい。 freeの結果も見せてみ。 それと各インスタンスのmemory_targetの値。 あとインスタンス1を落として、インスタンス2だけを上げた状態で 接続出来るかどうかの確認もな。
93 :
NAME IS NULL :2012/01/15(日) 15:11:35.57 ID:oFbJBuor
ls -l $ORACLE_HOME/bin/oracleの結果ちょうだい。 $ORACLE_HOMEの下の権限を変にいじると、こいつのsuidとsgidはずれる ことがある。 今suidとsgidはずしてみたが、同じ現象になった。
>>各位 皆様、ご指摘いただき有難うございます。 以下確認結果になります。 @freeコマンドの結果 以下、確認結果になります。 # free total used free shared buffers cached Mem: 1552832 1498780 54052 0 8780 684752 -/+ buffers/cache: 805248 747584 Swap: 4192956 196588 3996368 A各インスタンスのmemory_targetの値 →dbcaでのインスタンス作成時の結果になりますが両インスタンスとも 40%(606MB)ずつ使用しております。(606MB×2=1212MB) また、全体のメモリーは1500MBで設定しております。 Bインスタンス1を落として、インスタンス2だけを上げた状態で 接続出来るかどうかの確認 →確認しましたが、同様のエラーが発生しました。 ORA-12547: TNS:lost contact Cls -l $ORACLE_HOME/bin/oracleの結果 以下、確認結果になります。 $ ls -l $ORACLE_HOME/bin/oracle -rwxrwxr-x 1 oracle oinstall 163939574 1月 9 13:13 /opt/oracle/app/product/db_1/bin/oracle またご指摘の通り、書き込み権限を与えるためoracleインスタンス作成後 /opt/oracle/app配下にchmod -R 775 /opt/oracle/appで権限を付与してます。 DSElinux無効化の実施確認 SElinxu無効化後も、同様のエラーが発生しました。 ORA-12547: TNS:lost contact 不備などありましたら、申し訳ありません。
95 :
NAME IS NULL :2012/01/15(日) 15:42:51.86 ID:oFbJBuor
Cが原因だな。 chmod 6751 $ORACLE_HOME/bin/oracle した後、oracle再起動してごらん。 てか、ファイルも含めて全部775してるのかね。。 インストールしなおして必要な個所だけにパーミッション ふり直したほうがいいかもね。。
おかげで無事解決できました。 Thanks for ALL!!
すみません。
>>96 の方に先にお礼書いていただいておりますが、
改めて皆様に現状ご報告させていただきます。
まず本問題はやはり
>>95 の方にご指摘いただきました権限の問題にありました。
ご指摘いただきました以下のコマンドを実行することで
xxxユーザでinstanse2にアクセスすることができました。
chmod 6751 $ORACLE_HOME/bin/oracle
お恥ずかしい話ですがsuidとsgidの概念を存じておらず
ゆうに1週間以上かかって悩んでおりました。
また本日は貴重な休日のお時間を割いてご対応いただき、
皆様有難うございました。
私もこの板含め困った人がいた場合に、今日の恩義を忘れず
手助けしていく所存です。
Oracleのインストーラが未熟だということを知らない人結構居るから仕方ない
某パッチをあてたら、あるパーミッション関連がおかしくなるという バグもあったりしたしな。
>>72 >Web画面からデータ検索したら返ってくるまでに10分以上かかりますが何か?
それ、ブラウザによっては既にタイムアウトのエラー画面を表示してそうだなw
んで、イラついたユーザが検索ボタンを何度もカチカチとクリックして、
その度にWebサーバのプロセスが1つ立ち上がり、Oracleのサーバプロセスも1つ立ち上がり、
で、プロセス上限に達した所でフリーズしたかのような状態に陥って、
手の施しようのないことになるのだろう、きっと。
>>55 マシンスペックやワークロードの条件によりマチマチだと思うけど、
パーティション化の効果って、大体何万件くらいのオーダーで出てくるのかなぁ?
OracleDBAとしてこの本を読んで良かったという本ありますか? OracleSilverレベルのエンジニアですが知識を増やしたいので良本をまとめて5冊ほど買いたいです。 オススメあれば教えて下さい。
103 :
NAME IS NULL :2012/01/15(日) 23:44:14.12 ID:/BGjvgKm
>>100 少なくともうちはテーブルサイズが32GB超えそうなやつはパーティション化考える(bigfileは使いたくないので)
>>100 余程滅茶苦茶な構成でない限り、数万件でもパーティション化すれば性能面ではそれなりの効果が出てくると思うけど
よくありがちなデータの運用として日毎とか月毎とか年毎に特定の期間以外のデータを消していくような場合だと
性能面ではなく運用面でも効果があることが多くなる
DELETEで消していく処理時間よりパーティションのDROP&ADDの処理時間の方が大幅に短くなる上に新しいデータの
取り込みも特定のパーティションだけで処理できるから夜間バッチの全体の時間がかなり短縮できたりする
つ〜か、ユーザー名違うのにBinary共有ってどうなのよ? テスト環境でもあんまり個人的にはやりたくない構成だな。
<ヒント> グループID:dba
出来る事とやりたい事とは違うだろ。 ユーザーを分てまで運用するんっだったら、例えば片方をDBA用のサンドボックス環境にして もう片方はテスト環境といった使い方とか考えられるだろ? バイナリも分けていれば、サンドボックス環境はパッチ適用手順を確認したり、パッチがちゃんと 期待通りの動作をする事とかも確認したりとか出来るといった運用も可能な訳だ。 同じバイナリ使うのなら、わざわざユーザー名を分けるメリットを感じないのだがね?
勝手に想像した2つのユーザの使い分けを前提に話をされてもなあ
同じバイナリ使っているのにユーザーを分けるメリットって何?
アプリ部門でも使いたいという要望があったとして、 とはいえoracleユーザやdbaグループのついたOSアカウントを渡すと 万が一、何かされた時に大変なので、あくまでsqlplus程度の必要最低限の ものしか使わせたくないとかじゃないかな。
それだったら別途Oracle client入れてやるけどね。
>>110 DAやDBAがどこまで面倒みてるかによるな。
インフラしかみてないなら権限あげるべき。
oinstallグループまでなら所属させてもいいけど、dbaグループには 怖くて無理だな。 というか同じバイナリ使って、ユーザー違う名前でDB上げることに メリットはあるのか? それだったら同じユーザーでSIDだけ変えればいいじゃん。
ユーザが100人いればOracleClientを100個入れなきゃならんのか面倒くせえやつだな
>>114 いちいち違うユーザーで同じバイナリ使ってDBを起動することのメリットを説明してくれ。
>>115 DBサーバー上に直接100人もログインさせているシステムなんかあるのか?
せいぜいアプリからバッチを起動させるユーザーひとりで十分だろが?
そのクライアントのバイナリを共有させるのは十分意味があるだろうな。
バイナリを共有することのメリットはパッチ充てとかが 一回で済むという事はあるだろうな。 だがユーザー名を分けてDBを2つ以上起動する事の メリットというのは分からん。
>>116 おまえが「テスト環境」っていう状況を持ち出したんじゃないの?
100っていうのは大袈裟だけど複数の担当者がDBサーバ上で開発するのは普通にあるよ
井戸の中で何を叫んでるんだってことですよ
そういう宗教やってる人なんじゃないかと思う
共有ライブラリについても一家言ありそうな気配を感じるんだが
>>118 Unixアカウントを分けて2つのDBをあげることのメリットになってないぞ?
同じUnixアカウントでDBを2つあげることの相違があまり感じられないがな?
話がかみ合ってない人同士の話はそろそろ〆てくれないかな
>>54 データの削除運用も考慮していないのかよww
おまえら実はなんちゃってDBAなんだな。
125 :
124 :2012/01/16(月) 22:05:10.92 ID:???
な〜んちゃって
あの〜、質問なんですが、 ORACLEってインストール時に契約番号って聞いてこないんでしょうか? 非常に気になったんですが... Windowsとか鬱陶しいくらいに聞いてくるのに...
127 :
NAME IS NULL :2012/01/17(火) 21:34:20.37 ID:sO4HrurU
>>126 聞いてくるよ。しょっぱなに
それ以外は聞いてこない。インストール後も。
>>128 いまさら10gR2以下を使うところなんてねーよ田舎者
田舎者ってw
バージョン次第って言ってるだけで使うとか言ってないんだがまた妄想の人か?
>>131 こーゆーやつって顧客満足度低いよな。
残念すぎるわ
はいはい
まあ、特定のバージョン限定でしか話せないひとが顧客満足とか持ち出しても説得力ないわな
最近の商用オラクルってシリアルナンバー必要になったのか 開発者エディションばっかり使ってるから知らんかった
今日リリースされたパッチ、シャレにならんレベルのバグだな。
ある程度の長さのchar、varchar型のカラム内の不等号を、 xmlのタグと誤解して取り除く場合がある ただし顕在化するのは、SQL*Plusでそれらのカラムから その不等号入りの文字列を取得しているというような レアなケースでのみ 楽しいわ本当
要するにSQL*Plus使わなければ大丈夫ってことだな sqlplusのバグなんじゃねーの
Linuxとかのbashって、OS共通の環境変数は/etc/profile、ユーザ固有の設定は~/.bash_profileにと 分けて設定できるじゃないですか 似たようなことを、sqlplusの初期設定ファイルの設定でできますか? いま、OSユーザ毎に環境変数SQLPATHを設定し、login.sqlに必要な設定をするようにしているのですが、 全ユーザに反映させたい変更をする時に、全ユーザのlogin.sqlをいじるのが大変だし反映漏れとかもあるので、 共通の設定と固有の設定とに分離して管理したいと思ってます 実は、共通設定と個別設定をマージして各ユーザのlogin.sqlを作って配布するスクリプト等もあるのですが、 Oracle自身の機能でできないかと思っています
>>141 ググればすぐ見つかるネタ
/etc/profileに相当するのが{ORACLE_HOME}/sqlplus/admin/glogin.sql
144 :
NAME IS NULL :2012/01/20(金) 22:52:50.75 ID:96O4svvI
こんなことありえるか? 朝出社したらインスタンスが落ちててコールの嵐。 なぜ・・・?と思ったらオペレーターがディスク閾値を超えたから以下を実行したらしい。 sudo cp -p /opt/app/oracle/11.2.0.2/product/db1/admin/bdump/* /tmp/log/ sudo rm -Rf /opt /opt配下のディレクトリ構成 /opt/data /opt/redo1 /opt/redo2 /opt/arc /opt/conf /opt/tmp /opt/rman おれはそれを聞いた瞬間、職場を出て未だにファミレスにいる イロイロ
/optの下を勝手にrmするオペレータはクビにして良い
/opt/data
/opt/redo1
/opt/redo2
/opt/arc
/opt/conf
/opt/tmp
/opt/rman
↑こんなディレクトリ構成にしてるような
>>144 はクビにして良い
両方クビで円満解決ですね
地に足もつかない状態で帰宅しました。
頭がボーっとしてるけど手汗が止まらない・・・
社用携帯怖くて電源入れられないわ
>>146 設計は前任なんだよ・・・前々からこの構成まずいとは思ってんだけどね。
オペレータは外注だからたぶん切られると思う。
そしてあのDBは確実に復旧ができない。どんなスペシャリストでも不可能。
どうなるんだろ・・・
バックアップしてないのかよ・・・ もしくは、してても同じマシンに置きっぱなしかよ そこも問題ありじゃね
>>149 バックアップは /opt/rman の中に入ってたんだろw
ていうか、オペレータの責任だったら別に
>>144 は逃げなくていいだろ。
どんなスペシャリストにも復旧は無理だったら尚更のこと。
>>144 オペレータは、
sudo rm -Rf /opt/app/oracle/11.2.0.2/product/db1/admin/bdump/*
と打ちたかったんだけど、
sudo rm -Rf /opt
のところで指が滑ってエンターを押してしまったのかね。。。。
でも -R オプションはディレクトリも削除してしまう実行になるから違うか・・・
DBは怖いよね・・・
俺もますます気を引き締めて気をつけよう。
バックアップの責務を負う主たる者の責任と 消した人の責任。 この二名が背負ってください。
社員証、社用携帯、社用ノートPC、E-mobile、保険証、辞表
これら一式郵送します。当分この家にも戻らない。
離職票とか退職関連の書類は貰えるんだろうか・・・
>>150 その通りです・・・ありえない構成ですよね。
オペレータの責任は重大だけど日頃管理しているDBAがバックアップ退避させていないとか
責任問題になるのは明白です。下手したら役員に囲まれて罵倒されまくるんじゃないかと・・・
いずれにしろ、今日ばっくれた時点でどの面下げて戻ってきたって感じなので
絶対に戻れないです。
未だに心臓がバクバクしてる
ディスクからファイルを復旧する専門会社がなかったっけ? とりあえず、そこへ持ち込んでみるとか
mvにする手順にしとけばよかったものを… フールプルーフな手順の大切さを感じるね。
いいか。 まずsudo rmを打たずに、それ以降だけ入力してから打ち間違いの確認。 そのあとC-aで行頭に戻ってrmだけ追加して、その記述が目的にあっているか、副作用やリスクは何があるかを確認し、考え方の妥当性および目的と手段の繋がりを確認。 最後にC-aで行頭に戻ってsudoを追記して、typoやスペースの有無の違い、引用符とエスケープ文字の妥当性など表面的なことを確認する。 これらを習慣的に素早くこなせることを目指す。 これがsudo rmの正しい使い方だ。 sudo rm -rf / tmp/work なんて間違いが絶対に起きないように日々訓練せよ。 それを乗り越えてない奴にroot渡すな。
>>148 >オペレータは外注だからたぶん切られると思う。
切られるだけじゃ済まないだろ。
>>153 バックアップ退避を命じられていたのにやっていなかったは問題になるけど、
特に指摘されていなかったのであればサンドバックになることはならないとは思うが、どうなんだろ。
最低限のバックアップはしていたわけだし。
>>156 テキストエディタで構文を書いて間違いが無いのを確認してから、
teratermにコピペじゃだめかな?
つうか、そういうときはオンラインストレージ上に用意したゴミ箱ディレクトリにmvだな。
>>157 コマンドこぴぺでやるにしても、sudo rmをするときは、sudo rmを消してこぴぺしろ。
些細なミスで全部死ぬぞ。
マウントしている共有サーバーのストレージが丸ごと消えるぞ。
というか、そもそも root権限で rm する必要あるのかね?
Windowsだったらプロセスがファイルを掴んでる状態だったら削除することは困難なんだけど、 unix linuxは簡単にrmで削除出来るから怖いんだよなぁ。。。。
>>153 そこで先回りしてオペレータを罵倒する側に立つとか、逆に「オペレータは悪く
ないんです!DBAである私の監督不行き届きです!」って必死にかばう
ふりをするくらいの才覚があれば逃げなくてもよかったのにな。
逃げちゃダメ。 電話しまくれ。
>>160 オペレータのアカウント権限じゃoracleディレクトリの操作無理だろ
重要ディレクトリでrmなんて使わせるなよ。 最初の手順でcpしてるんだったらmvにすりゃ全て済む。てかそもそもログロテしてないのが悪い。 オペレータにやらせるんだったら削除用スクリプト作ってそれ叩くだけとかにしとけよ。完全にDBAの責任。
rootでrm -rf ./*とするところをrm -rf /とやってしまった俺が来ましたよ。 幸いな事にテスト器で、しかもO/S再インストール予定だったから問題には ならなかったけど。 それ以降、rootで何か消す時には-iオプションは欠かせなくなりました。
それにしてもまともなサーバーだったらO/Sレベルでテープとかに バックアップとか取っていないのか?
オペレータに手動ログロテさせてるんだな。 DBAの仕事だと思っていたわ。
DRとか考えていなかったのかいな?
>>169 ディザスタリカバリ?
んな予算ないだろ。
システムバックアップもDBバックアップもなければ終了 つーか、設計段階で普通に設計書レビューしてれば設計者をクビにしてるよな
所詮この程度の管理体制なんだから、周りを探せば テスト環境と題して、本番のコピーがそのまま残ってんじゃね?
基本的にrm絶対パス指定することがまちがってるだろ? まずcdで掘っていって、lsしてrmするだろ普通。
>>173 俺もそのクセはついてたんいだが、間違ってrm -rf ./* をrm -rf /*しちゃった(ノ∀`)タハー
なんだか大変な事態になって落ち込んでるようだけどこれは一人の責任じゃない オペレータのミスは重大な過失としか言えないけどそれ以前に設計が間違ってるし 閾値超えたときの運用手順もおかしい これを機にまともな設計ができる人材の確保を真剣に考えるべき あと重役クラスじゃないのなら「辞表」じゃなくて「退職願」な
ひどいことになってると聞いて飛んできました。
対応としてはディスク復旧サービスぐらいしか思いつかないけども。
>>157 teratermにコピペはむしろ怖い
コピペするデータにTabと改行が含まれてたときに何かが補完されて、確認するまもなく実行されてしまうことが怖い
部下がrm ./*をrm /*で実行して FOして、報告書とか色々書いた俺参上! 危機感がない奴は本番機を触るって意識がないから ミスばかりやるからなぁ 教育しかないんじゃね? 二人以上での作業をルール化してるけど起きるからね。
FOってフェイルオーバーかなと思ったけどどうにも理屈が合わないな
FadeOutだな
failoverはサーバーに障害が起きたとき自動的に待機系に切り替わること
まぁDBAが悪い
■誓約書の書かせ方 3つのポイント 誓約書の書き方は一方的に引き渡す、一人称のものが多い。 この誓約書の書き方を知っていると知らないとでは、効力が全然違ってくると思うので、知っておくべきだ。 さて、具体的な誓約書の書き方だが、いくつかポイントがあるので、要点別に下記に列挙する。 1.タイトルについて 誓約書のタイトルの書き方だが、これは別になんでも良く「覚書」でも「念書」でも一向にかまわない。 ただ、その書面の内容にあったタイトルを付けるのが肝要だ。 だから誓い約束するというような内容だったら、誓約書の書き方のタイトルは、そのままで良いだろう。 2.内容について 内容だが、5W1Hが明確である必要がある。 誓約書の書き方は箇条書きでも構わないし、文章形式でも構わない。 誓約書の書き方はこれと言った決まりごとがないので、自由に書かせてもいい。 しかし5W1Hが不明確だとトラブルの元になるので、そこはきっちり押さえておきたい。 3.日付について 日付は大事であり、これが抜けていると、効力が無くなってしまうこともありうる。 誓約書の書き方では、日付は大体内容の下、署名の上に記すものだ。 この日付の書かせ方は、平成○○年○○月○○日とキッチリ日まで書かせることが重要だ。 ○月吉日では誓約書の書かせ方としては片・手落ちである。 4.当事者の表示について 誓約書の書き方で、当事者をキッチリ特定するのは大切で、 名前は戸籍の通りに書かせる事。免許証等を出させて確認を怠らない事が重要だ。 誓約書においてこの当事者が間違って記載されていると、証拠力がぶれる可能性がある。 通常は下の方に、書いた本人が署名する。 誓約書の書き方として覚えておきたいのが、この署名の後に押印するのが通常だ。 より確実な誓約書とするには署名押印、しかもこの押印を実印を使った方が証拠力は高くなる。 無い場合は「記名押印に代えて署名」の一文を添えさせる事を忘れずに。 総合していえば、誓約書の書かせ方は証拠力を高めるために、どれだけポイントを押さえられるかだキーとなると思う。
誓約書を書いても無くなったデータは帰ってこない
滅多な事では叩かないが、何か障害が起きたときに調査のために叩くような コマンド(sarとかpsstatとか)をコッソリと --- #!/bin/sh shutdown -i5 -g0 -y --- と書いたshファイルに差し替えておく。無論、本番機の基幹サーバで。
>>144 怒られて済むなら今からでも怒られに行け。
このままトンズラしたらおまいの人生負け犬決定だ。
ていうか >144 が直接手を下した訳じゃないんだし、別に逃避するような事でも 無いと思うんだが。まあ、その後の復旧その他諸々を考えて鬱入るのは仕方ない としても。 障害が起きても自分の責じゃない時は結構気楽なもんよ
質問攻めはあるな。
前任者から引き継いでそのままだったなら、
「なぜ問題点を報告しなかったか?上司に相談したのか?そもそも気づいていたのか?」
は問題になるだろうが、引き継いだ時点でその構成だったことは
>>144 の責任じゃないから、
クビとかはないと思うよ。逃亡についてはかなり怒られるだろうけどね。
闘わないDBA
復旧不可能なのが自明な上自分が手を下したわけでもないのに辞めるとか逃亡って v.1.0のテーブル定義書しかなくて環境すらもう作れないくらいオワってるとしか思えんな
しかし離れたところにDataGuardでバックアップしてるようなシステムは少ない。
DBAとしての責務を果たさない時点で失格。 何のデータを失ったんだろうか。顧客関連でないことを祈る。
リモートバックアップしてたとしても、放置時間長ければ消えた状態しか残ってないんじゃないかと・・・。
損害の賠償について責任あるとして追求される可能性あるんじゃないの? そうなったら逃げ回ってたら余計に不利になると思うけど
昨日からこの話題で持ちきりだな
故意じゃない限り、過失に対して社員個人に賠償責任が発生する事はないな。 まあ、その後の昇進とか昇給賞与とかへの影響は知らんが。
>>195 それは会社全体の責任だろう。個人の重過失があればさらに会社から請求
されるかもしれんが、今回はそうでもないようだし。最悪でもクビだろう。
ただし敵前逃亡は銃殺刑だけどな。
>>199 会社から請求される可能性のことを言ったんだけどな
今回のオペミスを予測できたかどうかは別としても今までいろいろ放置してきたことが
最悪な事態の要因の一つにはなってるよね
過失の程度がどう判断されるかは分からんけど
>>146 一応、そのディレクトリが全部ディスクが違う可能性はある。
普通、あんまりしないけどw
逃げちゃ、駄目です。諦めたら試合終了です。 むしろ、失敗をどうリカバリーするか、リカバリーが無理ならどういう代替案を顧客に提案出来るかが大事だと思います。 問題が起きたら全て終わり、ではなく 逆に毅然と対応し、チャンスに変える方がいい。 とりあえずは謝りに行くといいと思います。
>/opt/app/oracle/11.2.0.2/product/db1/admin/bdump 見た所、11gなのに10gのような印象を受けるな。 リプレースか何かがあり、構成を変えると恐いからそのままにして使ってたのだろうか? 過去に遡って調査ができるとか色々理由があるけど、 ADRで自動削除ポリシーに頼って運用してれば、悲惨なことにならなかったかもね。 無論、何らかの原因で短時間のうちに大量にログ出力した場合は無理だが。 しかし、逃げたくなる気持ちも分かるわ。 みんなあんまいじめるなよ。
>>203 一連のレスをもう一回読み直したらどうか
うちのOracleサーバはVMで運用してるから安心 毎日OSのスナップショット取得してるからこんなときは即戻せる
>>205 ちっこいDBはそういうこと簡単にできていいよね。
>>206 サーバー数46台
トータルディスク使用(OS領域含まず):2.6テラ
小さいか?
>>207 そういう運用形態って小さなシステムを1つにまとめたって奴じゃない?
鰯の群れみたいな
46台で2.6TBだったら一個いっこはかなり小さいからvm単位で スナップショット取るのはそう難しくなさそうだな。 うちも1.5TBくらいのDBをvm上で動かしているけど、さすがに オンラインのスナップショットをバックアップ代わりにする勇気は ないわ。まぁ、「時間がかからないコールドバックアップ」みたいな 使い方ならアリかもな。
データファイルもVMに置いてんの?
211 :
NAME IS NULL :2012/01/22(日) 14:11:29.49 ID:3TfYHouu
>>207 あのなぁ・・・・
DB単体のサイズを記載しないと、DBが大きいのか小さいのかの判別なんかつくわけねぇだろ
RACって、仮想OSはサポート外だよね?
>>208 いや小さくないから
>>209 データベースファイルはRMAN使ってるわ
>>210 置いてるよ。
>>211 46台もあるんだから単体サイズなんて書いてられないだろ。
>>212 そうなの?RACなんて使ったことないから分からん。RACのメリットなんてないだろこの時代
今時4TBのHDDある時代に、何をケチ臭いこといってるのか… 大容量を生かしきれるだけの性能(ランダムアクセス速度)向上が無いことは問題だけどな。
ということはRMANでディスクか仮想テープドライブにバックアップした 状態のスナップショットを取っているということかな。 vmだからどうこう、という話じゃないんだな。
m9っ`Д´) RACノメリットナイッ!!
218 :
212 :2012/01/22(日) 20:20:06.01 ID:???
>>217 え、デマなの?
うちの会社ではそう聞かされたんだけどなぁ。
>>213 ,216
>RACのメリット
ぐあ!
それは俺も半分異議なし。
高いし、いざって時にバグでフェイルオーバーしなかったり、フェイルバックしなかったり、
gc系の待機イベントに今でも悩まされているので。
>>218 RACは設計も運用も厄介だよな。
目もあてられない状況になっている会社をいくつか知ってる。
>>213 >RACのメリットなんてないだろこの時代
え?
HA関連はそれなりにメリットあると思うぞ。 パッチもローリングで充てられたり出来るしな。
サードパーティのHAにした方が使いやすい
まぁ数分以上の停止時間が許されるシステムなら、RACなんて必要ないかもしれないなw
>>224 RACは両ノード上がらなくなる事案多発。
RACはRAID0と割り切って運用すべき
つまりないほうがましと
Oracle 11g + oo4oはVB6.0に対応していますでしょうか?
oo4oはともかくVB6はもうやめとけ
RAID1って言いたかったのかな
>>225 OPFSの時代から使っているが、そんなに酷い事にはまだ
ぶつかった事はないな。
なんかRACを使いもせずに単に耳年増で毛嫌いしている
という感じが否めない。
RACを毛嫌しして安価なDBサーバーを複数台作って 強引にデータを分割するという腐ったシステムを提案するバカSIerは氏んで欲しい
安くて安定稼動するならどっちでもいいよ
>>213 > 46台もあるんだから単体サイズなんて書いてられないだろ。
もしかして46台全てがDBサーバなのか??
RAC運用していてgc系のエラーで四苦八苦してると言ってる奴がいるけど、 アプリケーションがRACを考慮した作りになっていないだけだとちゃいまっか?
>>235 そのアプリを作ったのが、Oracle社なのですのよ。
ちゃいまっかって関西ではおっさんしか使わない
>>228 32bit版はあるが、64bit版は消滅
oo4o(VB6)に明日はないと思ったほうが良い
>>235 RACを考慮したアプリケーション作りってのは、具体的にどういったことを指す?
教科書どおりの回答だと、やれブロックサイズを小さくしろとか、
やれ逆キー索引使えとか、やれシーケンスのキャッシュを大きくしろとか、
やれ使用しない索引はDROPしろとか、やれコミットは頻繁に行えとか書かれてるんだけど、
そういったことじゃなくて、
例えば、
予算の関係上、開発環境はシングル構成。
本番環境のみRACってのが多くない?
本番に搭載してみて、初めてわかることが多いのが現状。
そこからアプリに手を入れるのは正直厳しい。
そんな状況下で、あなたならどんな解決策を見出せるのか教えてくれ。
>>236 EBSとDBはOracle社内でも開発チームは別れているからね。
DBでサポートされているのにEBSではサポートされていない
機能なんかザラにある。
それでも最近は結構まともに動く様になって来ているけどな。
依然としてうんこだろ
>>239 本番機と同等か、最悪でも若干のスケールダウンしたQA機を
用意出来ないのようなら、そういったリスクが当然つきまとう事を
まずは程説明する。
低予算で準備出来ないのならリスクは当然客は覚悟しないと
ならんだろうが。
RACは設計しっかりやらないと悲惨
>>239 単純にキャッシュフュージョンを防ぐために、
機能単位に接続するDBサーバを振り分けるとかあると思うが。
それが難しいようであれば、
OLTP系とバッチ系とかで分けるようにするとか。
どうしても各サーバの消費リソースに偏りが生じてしまうのは気持ち悪いけどね。
まぁ完全にRACの力を引き出すためには、
どのアプリがどのテーブルを参照・更新するかを把握する必要があるわな。
なかなか困難だということは理解してるつもりだよ。
247 :
246 :2012/01/24(火) 00:16:57.31 ID:???
>OLTP系とバッチ系とかで分けるようにするとか。 ああ、ごめん。 OLTP系とバッチ系で単純に分けれんわ。 忘れてくれ。
AIX5.3Oracle10.2からAIX6.1Oracle11.2にデーターを持ってくるよい方法を教えてください。
Oracleってちゃんと設定することさえできれば速いっていう印象がずーっとあるんだけど、そこは相変わらずなのかな。 結局ちゃんと設定できるDBAとかがいなくって、性能を引き出せてない的な。 もちろん他のDBMSでも起こり得ることだけど、設定できてないことのパフォーマンスダウンが著しい(らしい?)という点で
>>249 考えられる方法としては・・・
1. ストレージのFlash Copy等のコピー機能使って、対象サーバーに10gで上げてそれからウプグレード。
2. 普通にDatapump
3. Network link (DB Link)使ってのDatapump
4. トランスポータブル表領域
5. GoldengateやStreams
>>251 いやハードウェア面も大きいよ。
俺が特に重きを置いているのはディスクI/O(ストレージ)。
ディスクI/Oが遅いシステムはどんなにOracleをうまく設定しても
どうにもならんことがある。
>>241 そうなんだよな。
SunやBEAなど、合併&吸収の繰り返しで、
Oracle Fusion Middleware 11gとかいう巨大戦艦を作り上げてしまった感がある。
(大きすぎて取り回しが効かないというか…)
この巨大戦艦の前では、むしろDBAなんて不要なんだろうか?
>>254 欧州やアメリカではEBSはOracle Appsと言ってそれなりに使われている。
DBAもApps系をメインに扱う人をApps DBAと呼んでいたりする。
256 :
239 :2012/01/24(火) 05:43:16.01 ID:???
>>244 >低予算で準備出来ないのならリスクは当然客は覚悟しないと ならんだろうが。
そうだよなぁ。
勿論リスクは事前に説明させてもらっているのだが、
その時は耳に入っておらず、安いほうに飛びつく。
んでいざ問題が発生した時には、なんとかしろと怒鳴り込んでくる。
あぁ、我々って…(悲)
>>246 >機能単位に接続するDBサーバを振り分ける
事後だとやっぱ遅いから、事前にアプリ部門に伝えておけば、
ある程度は、なんとかなるかもしれないな。
LOAD_BALANCE=off, FAILOVER=on
でDataSourceを複数作る設計にしてね。っと。
Oracle 10gのグリッドってのはどうなったんだろうか。
>>248 知識に追いつけないからってイライラすんなよw
>>251 Oracleはキッチリ嵌ればSQL Serverよりパフォーマンス出るけど、ちょっと外
すとパフォーマンスの落ち方がマジ半端ない。
SQL Serverは常にそこそこのパフォーマンスを出す。極端に落ちるって事もあ
まりない。
>>259 ああ、やっぱ、なんていうか、そのとおりなんだ…
Oracleを使うってのは怖いことだね。経験があればいいんだろうけど…
自動車で例えるなら、 Oracleはマニュアル車、SQLServerはオートマ車のイメージだな。
SQL Serverもきっちり運用していかないとすぐにパフォーマンス落ちるぞ イメージ先行してるんじゃね?
プラットフォームがWindowsサーバで、構成が同じ場合、Oracleの方がパフォーマンス出るようにするのはしんどいとかなんとか スレ違いかもしれん
単に最初から、SQLServer/Windowsサーバに過大な期待を持っていないからだけだと思う。
>>261 走り屋みたいで、やっぱOracleはかっこいいな。
気分はイニDで、
「ここで必殺ミゾ落としだぁ!」とか、
ライト消して「ブラインドアタックだぁ!」とかって、
パフォーマンスチューニングやっていたい。
そうやってブツブツ言ってたら、同僚からは避けられそうだがw
ゲーセンとかに勤めてれば何の問題もないな
>>261 >自動車で例えるなら、
>Oracleはマニュアル車、SQLServerはオートマ車のイメージだな。
8iから使っている俺はマニュアル車どころか
ハイブリッドATのプリウスだお。
覚える事は増えたけど、楽でいいや。
おそらく10g、11gから入った人はAT限定免許と同じで
8iを乗りこなす事は不可能と思われ。
8iとか本当にクソだったな
8iはローカル表領域の登場がトピックだった
>>268 確かにOracleも人間が介在するようなことも無くなってきているから、
バージョンを重ねる毎にオートマ車に近づいているかもしれな。
きちんとチューニングされていれば、
UNDO表領域よりもロールバックセグメントを作成した方が早いもんな。
自動セグメント管理よりもフリーリストの方が早いもんな。
>>272 自動セグメントはRACにおけるInsert処理は圧倒的に早いけどな。
フリーリストも前もってエクステントを割り当てておかないと、スーパーマスターフリーリストの
コンテンションが高くなって、遅くなる。
メモリ管理も11gならmemory_targetが使えるけど、 もしかして8iみたいにSGAとPGAで分けて、 しかも共有プールやデータベースバッフャキャッシュとかソートエリアとか、 各コンポーネント毎に最適値が事前に分かっているとしたら、 静的に割り当てておいたほうが早いのか?
待機イベントとか、その辺の統計が見れない9i以前なんて、 俺、チューニングできる自信ねーよ…。
>>274 PGRA_AGGREGATE_TARGETとSORT_AREAとでベンチ取ったが、
スピードに差は無かった。
O/Sコールそのものは違っていたけどな。
>>275 何を言うか、8iには立派なutlbstat/utlestatというツールがあるんじゃよ。
結局逃亡者は逃げ切れたの?
>>278 その話はネタでしょ。
オライリー社のバックアップリカバリ(分厚い奴)に
それと良く似た話が載っている。アメリカのSEだけど。
なるほど釣られたってことか
SQLの関数で、gzip形式の圧縮・伸長を行ってくれる関数ってない? 例えばBLOB型のフィールドに対して、 INSERT INTO HOGE_TBL ( blob_data ) VALUES ( GZIP('abcd') ) ; SELECT GUNZIP(blob_data) FROM HOGE_TBL ; みたいなイメージで文字列を圧縮・伸長して出し入れしたいのだが。
オラクルよく分からないから知らないけど、JAVAストアドプロを駆使すれば JAVAの標準ライブラリが使えて圧縮身長も出来るんじゃない? 自分の担当したプロジェではJAVAストアドプロは使用禁止だったんで分から んけど。
Oracleの圧縮機能を使えばいいんじゃね
>>281 blob_dataが何型かは知らんが、短い文字列にgzipのような圧縮を行うと逆にサイズが膨らむんだけど。
試しに自分の環境で数百バイトの文字列を格納したファイルを圧縮してみ。
285 :
281 :2012/01/27(金) 22:19:27.98 ID:???
>>282 >JAVAストアド
うちも禁止なんだわー。
>>283 >Oracleの圧縮機能
実は、あるJavaのパッケージソフトが既にgzipで圧縮した文字列で使う仕様になっているんよ。
んで、手動でデータの検索をやりたいのだけど、文字列がBLOB型に圧縮されて入ってるもんだから、
単純に、Like 検索とかできない。
なので、SQL関数で用意されてればいいなぁ、と思った次第です。
SELECT GUNZIP(blob_data)
FROM HOGE_TBL
WHERE GUNZIP(blob_data) Like '%ab%' ;
↑こんな感じでWHERE句に適用することで検索ができれば…。
これができないがために、Javaアプリでデータを全部読みこんだ後、
アプリの中で文字列検索をしなくてはならないという、なんともつまらないことになってるんだわー。
>>284 >blob_data
BLOB型です。
短く書いたのは、あくまで例です。
既に入っているデータは伸長すると1メガバイト以上あった。
287 :
281 :2012/01/27(金) 22:46:35.97 ID:???
>>286 >COMPRESS.LZ_UNCOMPRESS
ありがとう、知らなかった。
ただ、バイナリToバイナリなファンクションなんだな。
WHERE句で文字列としてLike検索の対象とするには、
もう一工夫要りそう。
289 :
281 :2012/01/27(金) 23:03:55.02 ID:???
>>288 すげー。
こんな昔の記事がよくすぐに出てくるなぁ。
ありがとう、試してみる。
まあ、ggrksってやつだ 最初のは「oracle pl/sql gzip」、後半は「oracle バイナリ 文字 変換」
291 :
281 :2012/01/27(金) 23:30:58.85 ID:???
はは、手厳しいな(苦笑) 精進しますw
ググった方が明らかに早く解決するのに何が手厳しいんだぜ
Oracle始めようとおもうのですが 何から手をつければよいでしょうか
まずは服を脱いでください
そして1時間外で待ちます
俺がOracleだ
そう、トレーニングだ。 今流行のビリーズ・ブートキャンプなんておすすめ。
今流行
おまえら全員出て行けよな。臭すぎる
OracleDB勉強しようと思ったらJavaの知識はある程度必要なん? それともまったくプログラムの知識無しでやってる人いる?
どうやってDBにアクセスするのか って部分の言語力は必要じゃね?
>>302 目的は?
・これから仕事でDBを使うアプリ開発者になる ⇒ 自分がJava担当じゃなくても必要
・これから仕事でDB構築できる人材になる ⇒ Javaが必須じゃないけどプログラミング要素はある
・外部の業者に騙されないように知識を身に付ける ⇒ ある程度の知識はあるべき
・今更RDBの研究素材としてOracleを構造解析する ⇒ 必要
・その他(内容を詳しく)
>>302 必要ない。PL/SQLとSQLとOracleDBのアーキテクチャとネットワーク接続のアーキテクチャ・接続設定だけ分かってればおk。
プログラム覚えるならアプリケーションサーバのインフラ知識をざっくり把握してればおk
あとは何かあればアプリの問題だから知らんでおk
おk?
俺以外はなるべく勉強しないでほしい
パフォーマンスが出ないのを一方的にDBAの責任にしてくるアプリ屋がたまにいるので そいつらと対等以上に話すをするには、やっぱアプリの知識はあったほうがいい。
>>307 この意見は間違いない。
アプリ屋はクソキチガイが多すぎる。
アプリ屋ですがなにか?
あ、いや、別に何でもございません
>>302 あった方が良い時もある。
たとえばクソみたいなフレームワークをかませて開発していて、
そいつのせいで問題が発生している様な時に問題切り分け
とか出来たりする。
実際にそういう事があった。
フレームワークがJDBC使っててい、そいつを通すと、アプリに
DB関係のエラーが返っていたんだが、自分で単純にJDBCだけ
使って1万回以上SQLを実行させてもエラーが起きなかった。
フレームワークのせいでは無くてDBの問題だとアプリ開発者達は
ずっと言いはっていたけど、この結果見て「持ち帰らせてください」
って言って黙ったよ。
みて相手は黙ったよ。
2回書いたのは黙らせたことを強調したかったんです
アプリ屋はクズばっかり アプリ屋はクズばっかり アプリ屋はクズばっかり アプリ屋はクズばっかり アプリ屋はクズばっかり アプリ屋はクズばっかり 大事なことなので6回言いました。
おまえらのように程度の低い人たちがタッグを組むと最強のゴミシステムが出来上がるな
ごめん、俺アプリ屋だけどアプリ屋がクズっていう指摘には反論出来んわ。 この1年で前任が書いたクズアプリを直せるだけ直したけど、マジで10倍とか 速くなる事がある。実装後に一度位は実行計画見ようよ。ていうかそんなの 見なくてもダメダメなの丸分かりだけど。 あと、このテーブル設計じゃINDEXとかSQLチューニングではどうにもならない とかアプリ屋に言われる事もあるけど、だったら最初からもっとマシなテーブ ル設計しとけよボケとか思う事多々あり。
勉強すること多いっすね 独学でやっていけるだろうか
>>315 >ごめん、俺アプリ屋だけど
(中略)
>とかアプリ屋に言われる事もあるけど、
クズアプリ屋どうしなんだから仲良くな
メタデータ取得が激遅ってDBMSとして致命的だよな
>>319 はぁ? フレームワークがアホ過ぎて内部処理で激遅になってんだろ?
恐らくドライバ部分じゃないのか?
アプリ屋は自意識過剰なやつ多い DBAはガラパゴス野郎ばっかり いまの時流はITアーキテクト。こき使ってやるよ下流の下衆ども
上流≠上等では無いのだよ( ´,_ゝ`)プッ 勘違いが痛々しいな。
夢を見るのも自由だし夢を語るのも自由 ここは2chだ存分に語れ
先月まで動いてたオラクルサーバーに入れない ORACLE not available shared memory realm does not exist とか 1/12に自動的にWUかかったほかには、何も弄ってないんだが なんでだ
ひとつ心当たり?としては、 このサーバー(開発用)、DHCP からアドレスを貰って動いてました。 どっかでIPアドレスが変わってるかもしれません。 何か関連性ありますか?
IPアドレスが変わったらlistener.oraを直す必要がある。 けどまずはイベントビューアのログとOracleのアラートログを 確認したらいいよ
>>326 サーバーがリブートかかって、その後単にOracle DBを上げ忘れてるだけじゃね?
仕事でOracle使ってる人って独立する気ある? DB屋ってフリーでやってけるもんでは無いのかね
>>330 今は見知らぬフリーランスにまわせるくらい仕事があるような状況じゃない
それなりのスキルは当然としてDB屋に限らずコネがあるかどうかが重要
>>326 それはListener 経由の接続のみでか?
BEQ 接続だと問題ないか?
>>330 そういやフリーの人が作るシステムは、
Linux+Apache+Tomcat+Java+(MySQL or PostgreSQL)
って構成をよく見かけるなぁ。
(勿論、冗長化構成なんてものはなく、1つの筐体にこれら全てが入ってる)
そんなに厳しいミッションクリティカルが要求されないシステムでは
金がかからない分、客も喜ぶんだろうな。
>>326 これってSIDが設定されてないんじゃ?
おまえらが相手しようとしてる質問者はどうやらWindows使いみたいだぞ(勘だけど) WUってなんだろうと考えたらWindowsUpdateのことを言ってるっぽいしな 何をどこでどうしようとしたらそうなったのかもっと詳しく説明させるべきじゃないのか
336 :
326 :2012/02/03(金) 09:29:43.50 ID:???
イベントログにはエラーらしき情報は落ちてないんだけど どうやら起動後に、Oracle×××× のサービスを 手動で再起動させないといけないサーバーに成り下がったようです。 本番用だったらゾッとしますが、とりあえず開発用なので、 手間ではありますが、そういう使い方で続けます。
>>336 sqlnet.oraに↓の設定がある?
SQLNET.AUTHENTICATION_SERVICES =(NONE)
インスコしてから何も触ってないけど SQLNET.AUTHENTICATION_SERVICES= (NTS) NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT) ってなってる
339 :
NAME IS NULL :2012/02/03(金) 19:04:18.84 ID:ylJo/Bgl
アーカイブログが溢れたか
>>338 昔からWindows版のOracleは自分が必要な他のサービスと連携する気がないらしくて自動起動で立ち上がるのは
先にそのサービスが上がってるかどうか運次第なんだよ
なので
SQLNET.AUTHENTICATION_SERVICES= (NTS)
つまりOS認証を使うために関連するサービスが上がってないときにインスタンスを起動しようとすると失敗するから
それをNONEにして逃げるという手があるってこと
どうしてもNTSを使う必要があるなら知らん
サービスの依存関係って設定できなかったっけ
できるけど、そこに設定するのはそのサービスのプロセス自体に依存するものを設定するのが本来の使い方で、 ソケット接続のようなゆるいものは設定しない。
ちなみに依存関係を設定するための管理画面のようなものはないからレジストリを直接いじるしかない
クソだな やっぱunixでないとダメだな
UNIX系だと自動起動の設定、自分で作らないと駄目ですよね?
素人のような質問ばかりがとびかってるな
とか素人に言われましてもね
ど素人の頃は何から勉強していった? 知識も何もないからとりあえずオラクルマスターのブロンズ目指してるんだけど 平日は夜1時間くらいしか勉強できないから全然進まん
>>348 ブロンズなんてトータル10時間あれば取れるだろ
10日かかっちゃうじゃん
ちゃんと計算できるみたいだから合格するんじゃね?
いや、10日っていう結論出す前に仕様を確認できてないんじゃないのか 「平日は1時間」という条件しか記述されていないのだから平日以外は 何時間勉強できるのかをまず確認するべき
〜なら10日あれば合格しちゃうでしょ笑 とかほざいてる奴は大抵1ヶ月以上かかってる マジで10日くらいで合格してる奴は案外難しいから注意したほうが良いってアドバイスをする 受験と一緒だわ
独学で10時間は難しいのでは? SQLとDBA、2つ必要だから詰め込みでも30時間ぐらい必要だと思いますよ♪
>>343 2003以降なら、scっていうコマンドで管理できるわけだが。
>>355 それは失礼した
前言取り消して
リソキのsc.exeを使えばコマンドラインでサービスの依存関係も設定できる
ということかな
質問なんだけどJdbc接続のほうが良いの? ウェブサーバーからバッチでsqlplusで流してるんだけど、jdbcにするほうがいいのかな。
そりゃそうだよ
そんなわけないじゃん
表現力不足な質問多すぎだろ
で?
その理由は?
表現力というより提示すべき情報が不足してるのは多いな
分かるのに分からん振りするのもどうかと思うが
>>357 OracleにJDBCは使っちゃダメ。
結果セットが静的にしか生成できなくなる。
(ResultSetをDynamicにできない)
ボケててODBCと間違えたスマソ
とにかく否定したいという思いがあるから間違えるんだよね
teratermやcmdでsqlplus使うとselectの結果がひどいです。 colmn xx for aXXとかでいちいち整形しなくても済む方法なにかないですかね?
CSEを使う
372 :
NAME IS NULL :2012/02/06(月) 20:57:37.55 ID:JMa/P6HI
SQL Developerを使う
AIX のOracleでProCのコンパイラ環境使ってるんだけど、バージョン11.2に上げたら文字化け発生するようになりますた。こんな経験ありませんか?
CSEってそろそろオープンソースにしてもいいレベルだよな
CSEくらいソースもらわなくても自分で作れるだろ
>>370 SELECT '"'||COL1||'","'||COL2||'","'||COL3||'","'||・・・
FROM table
みたいなSQLを作ってExcelとかで見る。
SQL*PLUSならCOLSEP使ってもいい
CSEってなつかしいなまだあんのか
でもCSE、Windows7だと少し挙動が変なんだよね。 全然我慢できるレベルだけど。
CSEはCSVでの入出力の為だけに使ってるな。普通にデータ見るときは別のツール 使うわ。それとも、「とりあえず最初の10行だけselectして、続きはなんかボタ ンを押したらfetch」みたいなこと出来るの?>CSE いっつも、"WHERE ROWNUM<100" みたいな事書いてんだけど
フリーだと SQL Developer CSE 黒猫 A5:SQL くらい?どれも一長一短だね
PL/SQL developer \25000 Object Browser \46500 OBは結構便利な機能(loaderのctrlファイルを吐いてくれるとか)があって常用 したいんだが、個人で買うにはちょっとだけお高くて厳しい。 PL/SQL developerはPL/SQLで大き目のプロシージャを書くならマジお勧め。しかし これに慣れると、他のツールが使えなくなる。obj名補完の無いツールとかもう 無理だわ。
黒猫でいいんじゃね?
384 :
NAME IS NULL :2012/02/07(火) 23:14:20.27 ID:gKjY1fiR
オラクルで分からないところがあるんだが 答えてくれるとありがたい Q1、一つのPCで起動可能なインスタンス、データベース数 Q2、変数に値を入れた場合、どこの領域に格納されて管理されるか Q3、リスナーAが接続してるところにリスナーBが接続するとどうなるか Q4、表領域が10%切ったら通知を出したい。どうすればいいか
>>384 A1:リソースや設定に依存
A2:変数とは何か。バインド変数?
A3:意味不明。ポート競合を意図しているなら、後に起動するリスナーは起動できない
A4:表領域の何が10%を切るのか。通知手段は
Windowsユーザっぽい質問だな とくにQ3の意味がつかめん ここはエスパーの出番
>>384 A1:無限大。どんどん好きなだけ立ち上げろ!
A2:変数はどこにも格納できない仕様なので、常にCSVファイルに出力するようにして、必要になったら読み込む処理を自分で実装するしかない。
A3:それぞれのリスナーがパケットをバラバラに受け取るようになるので、ヒッチャカメッチャカになる。
A4:通知を出すことは不可能なので、必ず自動拡張をONにしておく。DISK容量がパンクした時点であぼーん。
…いや、全て冗談なw
>>384 A4
表領域使用率をチェックするスクリプトでも書いて、定期的に実行させろ。
メール通知でも音楽鳴らすでも何でも出来る。
A2
Privateなメモリ領域。
複数のProcedureやFunctionから共通で読み書きしたいPublicな変数が欲しけれ
ばテーブルに書き出せ。
A1
可能性は無限大
>>384 うちのDBAが客先でこんなトンチンカンなことを口走ってたらと思うと恐ろしすぎる。
考えさせられた
391 :
NAME IS NULL :2012/02/08(水) 02:05:54.62 ID:C0rq3LnK
質問です。 expdpによるバックアップをバックアップサーバ(Windows)の共有フォルダに保存したいのですが、 一般的にはどのような仕組みにするもんなのでしょうか? (Windows2003 Oracle 11.2)
>>391 直接保存する事も出来るし、一回ローカルに取ってからコピーとかも出来る。
ただし、直接Datapumpの出力先にする場合にはドメイン関連の設定とかかなり
ややしこしかったかと思う。
>>391 直接Datapumpの保存先にする場合。
- Network driveのmapはOracleをインストールしたユーザーで行う。(再起動時の設定も変えておく)
- ディレクトリオブジェクトの作成時には、ドライブレターでは無く、サーバー名を直接指定する。
例: SQL> CREATE OR REPLACE DIRECTORY SHARE_DRIVE AS '\\hogeserver\boge';
共有フォルダ使うときは権限の設定に注意がいるかもしれんね 具体的な内容はググれば見つかると思う
>>393 それ11gからはセキュリティ強化されて出来なくなってね?
ドライブにマウントすればいい。 その方が、セキュリティ設定がOS側で完結するから、確認もラク。
>>395 それってどのドキュメントに書いてある?
オラ29283の事かな?でもちょっと違うような。 どっちかというと11gからは >369 がエラーになるんじゃないんだっけ?
ペーパーゴールドが3ヵ月ぐらいでプラチナレベルになるにはどうすればいいですか? RACとかを自由に構築できる環境はあります。 無理とかでもいいので意見ください
400 :
391 :2012/02/08(水) 20:26:11.43 ID:???
皆さん。どうもです。 設定は特にいじらずに、共有フォルダのディレクトリオブジェクトを作成して 直接Exportできました。 一般的にはローカルに出力してFTPで転送がセオリーかと思っていましたが 直接保存する運用でも問題ないみたいですね
>>400 セキュリティ問題がどうたらこうたらで突然使えなくなる場合があるけどね
>>399 RACとかDGとか置いといて、ペーパーゴールドのペーパー取れるのにどれくらいかかるか想像してみれ。
シングル理解してないやつが、RACを理解できる訳がない。
ペーパー取れた後に、3ヶ月くらい理解の薄いところ重点的にやったらプラチナ取れるんじゃない?
質問です インスタンスAのテーブルA インスタンスBのプロシージャB 以上の状態で、プロシージャBからDBリンクでテーブルAにアクセスしているとします。 インスタンスA上で、テーブルAにアクセスしているがプロシージャBだと調べる方法は ありますでしょうか? よろしくお願いします。
インスタンスBからだとどのような手順で判るのでしょうか?
よく分かってないんだけど、シノニムにトリガって張れないんだっけ? 脹れるなら鳥が駆使して何とかなりそうな気が。
>>406 v$accessとv$sessionではどうなってる?
v$sessionとv$objectと何かでいけるかと思ったけどインスタンスAだけじゃだめぽ だからSQL_TRACEで辺りをつけるくらいしか思いつかない
>>406 パケットキャプチャすれば一発
はい論破
どこの誤爆なんだろう
>>412 パケットキャプチャすれば一発
はい論破
プロシージャの特定なんて不可能だろ。 実際にはプロシージャの中のSQLがアクセスしてるんだしさ。
つまらない案だけど、 インスタンスBのプロシージャを修正できると仮定した場合、 SQLにインスタンスBであることを特定できるような情報(コメント)を付加することで、 なんとかならんじゃろうか?
>>416 パケットキャプチャすれば一発
はい論破
バカがひとつ覚えたな
クライアントPC(WinXP)にOracleClientを二つ入れたらPCが起動しなくなったんだけど原因わかる人いる? ちなみに、入れたのは9iと11gです。 オラクルホームは別にしてあるんだけどなぁ…。
Oracleは2ついれちゃだめだよ
何言ってんだこいつ
>>422 とりあえず複数のPCで現象出てるから故障はないと思うんだよなぁ。
>>423 メーカーに問い合わせしたら複数入れてもオラクルホームが違えば問題ないって回答だたよ。
バージョンには5つ数値がある訳だし・・・ 9i、11gだけでなく、もう少し細かく情報をplz
>>427 したんだけど、暗号化されてた。
どうしたらいい?
>>428 裏パケ取らないとだめだよ、出直して来いよ
そのネタいつまで続けるつもりなん?
>>428 パケットキャプチャすれば一発
はい論破
>>429 なんだよ裏パケって?
↑6 ←4 →3
お、裏パケになった。
あ、冬休みか
おれの障害対応手順 1・alertlog確認 2・statspack確認 3・パケットキャプチャ確認 4.裏パケ確認 4までやって原因が分からない場合はサポート行きだな
>>421 セーフモードで起動できるのなら、自ユーザー用のレジストリが
何らかの理由でぶっ壊れたかだろうな。
一回元の状態に戻すで、再インストールしたらどうだ?
>>435 再インストールとか超手間
はい完全論破
ロンパールームか
Oracleのクライアントも導入出来ない奴にパケットキャプチャーなんて無理 はい論破
>>434 StatsPackって障害対応のためのツールだっけ?
裏パケって何よ?
>>440 知る必要のないどうでもいいネタ
自分のレスをアホっぽく見せるためのキーワード
Exp/impを高速化する方法求む 裏パケ以外で頼む
後ろにdpを付ける
direct
>>443 俺が使ってた某基幹sysはdatapump禁止だったなw
使うと高確率でora-0600の内部エラーになって監視アラートが鳴るもんだから、
使用禁止令が出された。
direct=y
indexes=n
statistics=none
こんなところ?
>>444 の言うとおり、ダイレクトパスを使えば早くなる。
>>445 11gからは、従来型のexp/impはサポート対象外って言われるんだよねぇ。
DataPumpだとディレクトリオブジェクトを作らなければならないとか少し手間を感じる。
(慣れたら問題ないのかもしれないけど)
でもサポート対象外って言われても、具体的にどんな不具合があるんだろうねぇ?
個人的には
>>445 がいうように、DataPumpのほうが割とエラーが多かった気がする。
(体感的に)
447 :
NAME IS NULL :2012/02/14(火) 06:52:56.34 ID:iwFT3/Kx
datapumpは基本ダイレクトロードで処理される consistentパラメータが廃止になったのが痛い
directのデメリットって何?
確かにDataPumpってまともに使えたことが無かったよな。 絶対にOracleはテストしていないだろ?? しかもDirectoryオブジェクトを作らないと使えない糞仕様とかw 誰得なんだよw 11gからは少しは改善されたのだろうか。
ただ、なんだかんだ言っても速度面では圧倒的なんだけどな>Datapump Dirオブジェクト必須なのはOracleのjobがファイルを出力している以上は仕方 ないだろjk 11gでDataPumpがおかしな挙動をした事は一度も無い。
Oracleのプロセスで動くという点で本来あるべき姿な気がするけどな 権限周りとか Directoryが必要なのも抽象化と考えるとそんなに不自然ではないと思う Oracleの初物が信じられない不具合があるのはよくあること・・・ Web版EMとかRACとかASMとか最初ひどかったような。
Java版EMと初期Web版EMの酷さを体験した人は今でもOEM自体が無いものとして運用手順書を書く
>>450 10gだが普通に使えてるぞ?
プラットフォームはHP-UXだけどな。
150GBぐらいのデータ量をNetwork link経由でやってるが特に問題無し。
メタデータとオブジェクトの違いを教えてくれ
データベースで言われる言葉のことを言ってるんだろうから メタデータ: オブジェクトがどう定義されたかを示す情報(端的に言えばCREATE文そのもの) オブジェクト: 表領域とか表とか索引とかプロシージャとかの実体 ていう感じでいいんじゃないかな
マテビューログの削除の仕組みを理解できない。 サイトAにマスター表があり、高速リフレッシュのためにマテビューログを作成する。 サイトBとサイトCからマテビューでサイトAのマスター表を参照する。 サイトCを撤去した場合、サイトAのマテビューログは永遠に削除されなくなるの?
>>457 ほっとくとマテビューログは際限なく大きくなる。
PURGE_LOGすればサイトCのことを忘れてくれるんだと思うけど試してはいない。
>>458 マジか。
PURGE_LOG 調べてみたけど、そういう用途で使うもんじゃなさそうだぞ。
そもそも分からないのは「あるマテビューログが何個のマテビューから参照されているのか」
っていう情報をどっかに持ってるのかってことだわ。
さも持っているかのように書いてある人もいるが、情報そのものの話は見ない。
ちなみにマテビューログとマテビューが1対1の場合で試した限り、
・同一データベース内だと高速リフレッシュしたらマテビューログが消えた。これは納得できる。
・別データベースだと高速リフレッシュしてもマテビューログが消えない。なんでやねん。
1対2のパターンを試せばもうちょい理解が進みそうだが月曜まで無理。
定期的に完全リフレッシュしてマテビューログを削除するみたいなことが必要なんだろうか。
みんなどうしてるの?
おらおらオラクルにマテビューの検証記事があるからじっくり読んで来い 話はそれからだ
461 :
459 :2012/02/18(土) 10:43:05.76 ID:???
462 :
459 :2012/02/18(土) 17:59:24.04 ID:???
>>460 読んだ。環境がなので実際には試せてないけど。
459で書いた疑問に答えてくれる内容じゃなかった。
が、内容は理解できたと思う。
それからの話を頼む。
SQL Developerで今ログインしているユーザ以外のオブジェクトって見れないのかな? SYSTEMでログインしても他のユーザのデータ見れないないよね SELECT文ながしたらそりゃー見れるけど
意味が分からん SELECTで見れるんなら見れてるだろ
自演じゃねえの?
>>463 パケットキャプチャすれば一発
はい論破
裏パケ採らなくても大丈夫か?
Oracleサーバーとクライアントマシンは無線ランで繋いでるのでパケットの キャプチャーは出来ませんw はい論破w
いくらネタとは言え無線だからパケットキャプチャーできないとか 恥ずかしいこと言うくらいなら黙ってたほうがいい
471 :
469 :2012/02/19(日) 05:08:35.56 ID:???
>>470 はい論破。
無線ランはその性質上優先よりセキュリティが重要なんで電波はより強固な暗
号化処理がなされていて、パケットキャプチャーしたところで内容が確認出来
る訳じゃないのでパケットキャプチャー出来ない。
472 :
469 :2012/02/19(日) 05:09:58.92 ID:???
恥の上塗りもやめとけ
ガキンチョののウンコティンティンに勝てるものなどないことを学べ
>>470 =473=476=3x+470 (x>=0)
>>473 電波が暗号化されてる電波をどうやってパケットキャプチャーするつもり?
暗号化されてるんだから見ても何も分からない事が分からない?
つまりパケットキャプチャー不可。
はい論破。
自分のレス読み返しても矛盾してないと思うなら論破でいいぜ もうめんどくせえわ
論破マニアのネタに付き合うからそうなる
>>478 暗号化された電波を復号するのは無理ですが、
自ホスト内で復号された後の平文のキャプチャーは可能です。
「Oracleサーバーとクライアントマシンは無線ランで繋いでる」
のであれば、そのクライアントマシン上でキャプチャーすればよいですよ。
>>478 パケットキャプチャすれば一発
はい論破
パケットキャプチャをハッキングと混同してるアホが居るスレはここですか?
本当はクラッキングって言いたかったんだよね
今は実質ハッキングもクラッキングと同義で扱われてるよ
>>485 今?昔から同義で扱われてるから混同っていうんだろw
>>483 パケットキャプチャすれば一発
はい論破
サーバーリプレースで9.2 → 11.2へアップグレードするんですが 自動管理メモリって実際使えてますか? Win2008R2 Xeon X5600系 2vCPU 4GB RAM 200GB SSD を割り当てた仮想サーバーで memory_max_target = 2000M memory_target = 2000M sga_target = 0 pga_aggregate_target = 0 共有サーバー設定 (プロセスは5つ稼働 同時接続100〜200ぐらいを想定) に設定していっぱいアクセスしてみたのですが、いい感じで動いているように見えます。 昔みたいに、メモリのバランスを微調整しながらチューニングする作業は不要でしょうか?
>4GB RAM なんで16Gつまないのか
493 :
490 :2012/02/19(日) 21:27:11.99 ID:???
とりあえず 2000鯖+9.2の古き32bit環境からの移行で 性能的な不満もなくハードが劣化した事によるリプレースなんで 最初は4GBでいいかなと... 実際、OSが食うメモリが増えたり Oracleプロセスが食えるメモリ上限がなくなったんで 本番環境はもっと増やそうかと思いましたが、別VMで大量のメモリを使われて 割り当てられる空きが無いと鯖担当に断られました... しかしまぁ、ディスクがSSDだと10GBぐらいの表領域を3つ同時に作っても高速に動作しますね...
Hyper-Vで仮想化か・・・ ちゃんとライセンス料払ってるか?
>>495 ライセンス厨はウザイから別のスレでやってくれない?
2008R2 EEだと 物理1個+仮想4つ分のライセンスがついてくるよ DCだとプロセッサ単位の課金だけど、仮想が無制限になる。 Hyper-Vは台数増えると性能がガタ落ちするうんk仕様でうちの会社じゃ却下されたが...
2008R2 EE 買うと、オラクルのライセンスが付いてくるのか。 そりゃいいこと聞いた。
Hyper-Vだとオラクルのライセンスって、仮想に割り当ててるCPUの数じゃなくて、 物理サーバのCPU分だったよな、たしか
>>497 パケットキャプチャすれば一発
はい論破
パケットキャプチャすれば一発 はい論破 これアプリ屋からのセッション切断クレームに使ってみるか・・・
SSDって耐久性はどうなの? 表領域にSSD使うような提案するときってそこがつっこまれそうだけど 実際にSSD使ってるとこある?
>>484 クラッキングじゃなくてハッキングって言ってるだろアホか
>>490 カリカリッにチューニングした方が早い場合もあるけど、
普通はmemory_target指定で問題なく動く様になって
いる。
『はい論破』ってなんだよwwwww
「私が学長です」
ハイッ! ロンッ! パーーァッ!!
>>502 業務用のSSDなら問題ない
秋葉原でPC用のSSD買ってきて使うのは危険
>>490 9iから11iへの移行なら天国じゃね。
>メモリのバランスを微調整しながらチューニングする作業は不要でしょうか?
メモリ量が超少ないとかいう場合を覗いて不要でしょう。
>>509 Vertex MAX IOPSでも危険だぞ。やめとけ。
EvoDriveも恐らく危険だ。
>>502 そりゃあ、SSDの特性上書き込み限界は必ずあるぞ。
SSDはHDDより壊れるタイミングが重なりそうで怖い
514 :
502 :2012/02/21(火) 20:11:42.94 ID:???
SSDのご意見感謝 業務用SSDでググったらもうFCでしか活用できなさそうな性能になってるんだな それでも頻繁にWriteがあるような表領域には寿命的に割り当てにくいよね 信頼性は多重化とかで確保するのはHDDと同じだろうけど業務用に使うには もう少し様子見かなあ 読み取り専用の表領域があるようなところなら検討する価値ありそうかな
>>514 Fusion IOとかtachIOnだったら大丈夫。
ログスイッチが発生したらメモリ使用率が上昇したので、 発生前後で ps で全プロセスの状態を取得して、 見比べてみたのだが、これといって違いはなかった。 では何がメモリを食ってるのか? あくまで憶測なのだが、 ログスイッチされてアーカイブされるってことは、 そのファイルに読み書きが行わるってことよね? ということは、単にREDOファイルかアーカイブログファイルの ファイルキャッシュが発生しているだけっていう可能性あるかな?
>>516 自宅の環境でvmware上で構築したOracle RAC環境で、
VotingディスクをSSD上に配置したら数日でSSDが壊れたw
まぁ表領域のデータファイルは、Votingディスクほどは局所的に激しく書き込みはしないけど、
SSDはまだ時期尚早なんじゃないのかな。
あとSSD搭載のサーバって値段がバカ高いんだわ。
それだったらHDDをRAID化した方が良いんじゃないかな。
>>517 単純にcpコマンドでコピーした際にメモリ使用率が上がるか確かめれば良いんじゃないの?
SSDをキャッシュに使う機能がOracleにあったんじゃなかったっけ? たしか、HDDとメモリの間において・・・
>>519 O/SがOELかSolarisなら出来る。
あとExadataは標準でSSDがついてくるから、二次キャッシュ用に
設定出来たり、永続的オブジェクトを置いたりとかも出来る。
ちなみにExadataだとOracle社の製品だから、datapumpで使用する
ブロックはSSD上に作成された二次キャッシュには置かないなど、
それなりの処理が行われる。
When to Configure the Flash Cache You can consider adding the flash cache when all of the following are true: Your database is running on the Solaris or Oracle Linux operating systems. The flash cache is supported on these operating systems only.
囲い込み戦略
>>521 きちんと裏パケ取らないから論破されちまうんだぞ?
FacebookのFlashcacheを使ってる奴はいないのかい?
Oracle10gのインポートでエラーが出て困っています。 インポート時のエラーとしては IMP-00063: 警告: 表"HOGEUSER"."HOGETABLE"をスキップしています。 オブジェクト型"HOGEUSER"."HOGEVALUE"が作成不可または識別子が違っています というエラーが出てテーブルが作成されません。 なのでインポート前に create type HogeValue as varray(200) of varchar2(128); としてHogeValueを作成してインポートしてみたのですが 同じエラーが出てしまいます。 何かわかる方がいましたら教えてくださいませ。
>>528 せめてExpとImpのパラメータくらい晒して
バージョンも
>>528 TYPEを含むTABLEをCREATEしてからIMP
お陰でオマンマにありつけます
>>528 パケットキャプチャすれば一発
はい論破
v$sqlとかのsql_idってどこまでユニークですか? 同一DBで過去のsql_idと現在のsql_idが一致していれば 同じSQLとみなしていいんですかね?
537 :
NAME IS NULL :2012/02/23(木) 23:25:47.67 ID:Vjb3ZGeD
パケットキャプチャすれば一発 はい論破
____ / \ /\ キリッ . / (ー) (ー)\ パケットキャプチャすれば一発 / ⌒(__人__)⌒ \ | |r┬-| | \ `ー'´ / ノ \ /´ ヽ | l \ ヽ -一''''''"~~``'ー--、 -一'''''''ー-、. ヽ ____(⌒)(⌒)⌒) ) (⌒_(⌒)⌒)⌒)) ___ / \ /ノ \ u. \ !? / (●) (●) \ | (__人__) u. | ・・・ \ u.` ⌒´ / ノ \ /´ ヽ ____ シーン・・・ / \!?? / u ノ \ / u (●) \ | (__人__)| \ u .` ⌒/ ノ \ /´ ヽ
____ / \ / ─ ─ \ はい論破 / (⌒) (⌒) \ | (__人__) | ___________ \ ` ⌒´ ,/ | | | ___/ \ | | | | | / , | | | | | / ./ | | | | | | ⌒ ーnnn |_|___________|  ̄ \__、("二) ̄ ̄ ̄l二二l二二 _|_|__|_
542 :
541 :2012/02/25(土) 17:02:27.07 ID:???
___ / \ /ノ \ u. \ !? / (●) (●) \ | (__人__) u. | ・・・ \ u.` ⌒´ / ノ \ /´ ヽ ____ シーン・・・ / \!?? / u ノ \ / u (●) \ | (__人__)| \ u .` ⌒/ ノ \ /´ ヽ
:: .|ミ| :: .|ミ| :: .|ミ| :::::::: ::::: ____ |ミ| :::: :: ,. -'"´ `¨ー 、 :: :: / ,,.-'" ヽ ヽ、 :: :: ,,.-'"_ r‐'" ,,.-'"` ヽ、 :: :: / ヾ ( _,,.-='==-、ヽ ヽ、 :: i へ___ ヽゝ=-'"/ _,,> ヽ :: ./ / > ='''"  ̄ ̄ ̄ ヽ :: / .<_ ノ''" ヽ i :: / i 人_ ノ .l :: ,' ' ,_,,ノエエエェェ了 / i じエ='='='" ', / :: ', (___,,..----U / :: ヽ、 __,,.. --------------i-'" :: ヽ、_ __ -_'"--''"ニニニニニニニニヽ :: `¨i三彡--''"´ ヽ :: / ヽ :: ┼ヽ -|r‐、. レ | / ヽ:: d⌒) ./| _ノ __ノ
つか、なんでオラクルクライアント二つ同居させるとパソコン起動しなくなんだよ…。 ドメインに参加しなければ大丈夫なんだけどな…。 因みに、xp
>>544 ドメイン管理者に相談するのが早いんじゃないの?
端末に何をインストールしてるか監視したり許可されてないものをインストールできないように制限したり
してるところは普通にあるし
>>545 ちなみに自分は社内SEで、ドメイン管理者(^ ^)
特にソフトのインストール制限はかけてないですね。
色々切り分けをしたところ、オラのクライアントを同居&ドメイン参加時に現象が出てます。
>>546 当然イベントログに何か出てないか調べたんだよね?
つーか、起動できないって言ってるのがログオンできないことを指してるように思えてきたんだけど・・・
>>548 もちイベントログ見たよ。
けど特に変なログはないんだよね…。
ちなみに、起動しないってのはご想像のとおりログオンできない状態だよ。
細かく言うと、ログオン後の個人設定の読み込みから先に進まない。
550 :
NAME IS NULL :2012/02/26(日) 11:51:47.22 ID:lh0741+f
Verは11gr2のエンタープライズ RACを構成したさいオプティマイザーの動作ですが @各ノード単位に動作する? A全体を代表して余裕のあるノードで動作する? B上記のどれでも無い! わかる方いらっしゃいますか?
>>549 パケットキャプチャすれば一発
はい論破
>>550 こればっかりはパケットキャプチャしないと分からない
553 :
NAME IS NULL :2012/02/27(月) 00:03:25.03 ID:Ae8AGvdY
555 :
NAME IS NULL :2012/02/27(月) 02:12:02.55 ID:7hr4/ToF
>>552 >>553 サンクス
自動オプティマイザの動作について聞いてました。
スケジュールに沿って、動作しているけど、オプティマイザで
収集する情報は一緒なんだから、各ノード単位に行う必要は
なさそうだけど、どれのノードを親にして?なんて、設定は
した覚えもないし?
どのノードが中心になって実行してるのか不明だったので
>>555 ライブラリキャッシュが独立している以上、パースは実際にリクエストが
投げられたノードで行われと考えるのが妥当じゃないのか。
そもそもアクセスパスをノード間で共有するメリットはないだうろし、
キャッシュフュージョンにおけるブロックのリソースマスターノードは
ブロックレベルで分かれるているしな。
>>555 自動オプティマイザ統計収集なら、各ノードで行われます。
動作を追った事は無いけど、例えばノード1がテーブルAの統計を
取得し、直後にノード2がテーブルAの統計を取りにきても、既に
統計取得済みと判断してスキップするはず。
(同時に取得にきたら、ロックで待たされた結果、スキップするんじゃ
ないかな)
RACだと、内部的にはキャッシュマスターとか、いわゆる「親」になる
部分はあるけど、基本的には全ノードが並列で動いて、全部が
同じ事をしていると思って大丈夫。
スペックが違うマシンでRACを作ったら実行計画は変わったりするんじゃないかな
>>558 システム統計が違うので、実行計画が変わる可能性はありますね。
でも、コスト計算はデータアクセスの方が影響は大きいので、あまり
気にするほどの事は無いかと。
ストレージは同じだしね。
むしろバッチ系の処理は高スペックノードに繋げるようにするとかの
設計の方が大切でしょう。
561 :
NAME IS NULL :2012/02/27(月) 22:02:30.09 ID:7hr4/ToF
実際に完全に同じ2台のマシンでRAC組んで実運用してみりゃわかるけど、2台の マシンで実行計画変わるぞ?
Oracleだけであと30年食っていけると思うか?
>>563 そりゃ検索条件次第で、同一マシンでも変わるでしょ。
おれのレベル(自己評価 Max:99) トータル経験年数:15年 Oracle:58 SQLServer:75 DB2:60 MySQL:78 Postgres:30 Linux:40 Solaris:18 Windows:70 AIX:45 もう食いぶちないよ
Solarisが意外と高評価だな
おれのレベルってことだろ
Max99にした意図が分からない
>>570 きっと最強がレベル99なんだろう
ほんのちょっとしたことで精神年齢の幼さがわかるんだな
オレも気をつけよう
フィールドが number(2,0) だからだろ。気づけよ
PostgreSQLのoidにあたる仕組みってOracleにありますか? 日付情報がVARCHAR型でYYYYMMDDHHMMSSなので、ミリ秒違いでソートできない…
そもそもOIDがそのソート目的で使えるの? というか 検索キーワード: PostgreSQL oid oracle くらいで見つかるだろ
パーティションで過去データ(参照専用)分は別ストレージに保管したいんだが 容量をケチって、できれば索引は作成したくない。 パーティションを別表領域に移動すると、ローカル索引は使用禁止になって セグメントも作成されないんだが、この状態で運用するのはアリかな?
>>575 無いわ・・・ ┐(´д`)┌
俺だったらcompressするか別テーブルに保管するかファイル出力するかだな。
そもそもOracleはそういう使い方を想定していないからな。 インデックスのステータスがunusableの状態は不自然な状態だってーことを肝に銘じときな。
578 :
575 :2012/02/29(水) 22:09:49.41 ID:???
…やっぱりそうですよね
579 :
NAME IS NULL :2012/02/29(水) 23:02:17.33 ID:OKBZLSFC
Oracle11gのEnterpriseManagerについて教えてください インストール時にLoopBackAdapterとネットワークアダプタA(ip:111.111.111.111)が有効状態でした インストール後にネットA上にあるPCからリモートデスクトップ接続でシステム権限でログインできました。 その後、ネットワークアダプタB(ip:222.222.222.222)を追加してネットB上のPCから リモートデスクトップ接続しました。そうするとシステム権限でログインできませんでした。 Userかパスワードが違うといわれます。 もしかして、インストール時に刺さってないLANからはアクセスできないんでしょうか? システムが稼働中で再インストも試せる機会が少ないです どうか教えてください
581 :
NAME IS NULL :2012/03/02(金) 03:06:41.76 ID:jBYoGp4R
LOB 専用記憶域の作成方法が分かりません。 マニュアルを探したんですが見当たりません。 ご存知でしたら教えてください。
>>581 パケットキャプチャすれば一発
はい論破
>>581 専用っていうか、普通に表領域作成して、
CREATE TABLE する時に、該当のLOBフィールドのSTORE句(だったかな?)に
その表領域を指定すればよかったと思うけど、そういう質問意図ではなくて?
584 :
NAME IS NULL :2012/03/02(金) 12:01:48.71 ID:jBYoGp4R
>>583 それでもいいんですが、LOBフィールドがたくさんあるので、
STORE句を指定せず、すべてのLOBデータが自動で格納される表領域を作りたいです。
調べたらLOB 専用記憶域というのがあることが分かったのですが、
作り方はわかりませんでした。
まず、どうやってLOB 専用記憶域というのがあることが分かったのかを書いてみればいいんじゃない?
マニュアルの誤訳に一万ペリカ。
11gを使っている皆に質問。 メモリー管理にはどっちを使ってる? 1.自動メモリー管理(MEMORY_MAX_TARGET) 2.あえて、自動共有メモリー管理(SGA_MAX_SIZE)と自動PGAメモリー管理(PGA_AGGREGATE_TARGET) 3.いや上記のどちらでもない 理由も一緒に教えてくれるとありがたい。
589 :
NAME IS NULL :2012/03/03(土) 07:47:43.72 ID:fnCNAjnu
>>586 マニュアルやネットで見てそうお思い込んだのですが、どうも違うようですね。
>>585 アウトライン格納のことでした。もう少し調べてみます。
ありがとうございました。
索引を圧縮するデメリットって何かある?
圧縮された情報を管理する情報が必要になるから重複がない若しくは極端に少ない索引だと 領域と処理時間が無駄になるという点くらいじゃないかな カーディナリティに留意して圧縮するかどうか決めればいい
593 :
NAME IS NULL :2012/03/03(土) 11:26:06.52 ID:BTSU3DY3
>>590 メリットは容量の節約のみ
デメリットはスループット性能の低下を含め沢山
594 :
591 :2012/03/03(土) 11:33:46.17 ID:???
読み取りバイト数なんかは減少するから、 パフォーマンスは若干上がるんじゃないかと思うんだが そうでもないのかな?
データを書き換える圧縮と勘違いしてんじゃね
どこにネックがあるかじゃない? ディスクI/OにネックがってCPUが余ってるなら、圧縮は効果的だろうし 逆にCPUに余裕がない場合、圧縮/復元でよりネックになるだろうし
597 :
591 :2012/03/03(土) 12:47:24.61 ID:???
場合によりけりってことかな。 DSS系なんで、パーティション化して 表とPK以外の索引は圧縮済。PK索引の圧縮を検討しているんだけど 止めたほうがいいのかなあ。 ちなみにCPUは余りまくってます。ネックややはりディスクI/Oです。
>>588 パケットキャプチャすれば一発
はい論破
>>594 ,597
おまえは何が目的で名前に591を入れてんだぜ
600 :
NAME IS NULL :2012/03/03(土) 16:10:37.35 ID:egOj4WPE
>>593 オマエは ”スループット” という単語を言いたいだけだろw
EMって、trsnames.oraを設定してないと使えないの?
602 :
590 :2012/03/03(土) 18:26:33.01 ID:???
EMは構成するときにSIDとリスナーのポートが必要だったはず tnsnamesは関係ないんじゃね?
リスナーのポートか・・・ なんかoracleインストールするだけなのに、異様に躓くんだよね・・・
EMはEMCAというコマンドを調べればいい これで構成も解除もできる
>>601 パケットキャプチャすれば一発
はい論破
>>601 EMは通信系のトラブルが多いからパケットキャプチャは必須。これマメな
はい論破とか言う奴未だにいたんだな 恥ずかしくないのかな
かまってちゃんにかまうアホがいるからこうやって調子にのるんだよ
>>588 memory_max_target & memory_target運用
チューニングできる経験豊富なDBAが病んで退職したすぐに
サーバ老朽化のため2K鯖&9.2i(32bit) 6台 → 2008R2&11.2(64bit) 1台へ統合リプレース
自動でチューニングやってくれるならやってもらえばいいんじゃね?って適当な感覚でろくに試験もせず
memory_max_target =12G memory_taget =12G SGA_target=0 PGA_aggregate_target=0
鯖にある16GBのメモリのうち12GBをOracleへ割り当てるように設定したら
今まで遅かったシステムのレスポンスも劇的に改善し、不満も無かったのでこのままにしています。
従来は、32bit環境で2GB縛りがあったから 限られたメモリを有効活用するために
手動チューニングが必要だったんだろうけど、64bitでメモリの縛りがなくなってからは
多めのメモリを積んで、Oracleに動的変更させておけば楽じゃないかな。
>>588 どっちがいいかはどっちも試験して予測と結果を検証してから決定
ユーザには数字で提示しないといかんしな
>>612 残り4Gか。
レスポンスが改善してるなら結果オーライだけど、
搭載メモリの75%も割り当てるとは、なかなか勇気がいるな。
同時実行プロセス数とかは、そんなに多くないワークロードなの?
615 :
612 :2012/03/04(日) 21:38:32.86 ID:???
OS上でアプリが全く動いてないDBサーバだから OS用に4GB残しとけば十分じゃね システムの作りがDBに優しくなく、1台のクライアントが10個ぐらいのexeを立ち上げて DBセッションを張るわりに、ほとんどアイドル状態で全社で5000セッションぐらい来るんだ... だから、共有サーバの設定で何とか切り抜けてます。
616 :
614 :2012/03/04(日) 21:58:14.00 ID:???
>>613 確かに全てのパターンで検証できれば理想だけど、
実際の案件でそこまでするのって、現実的なんだろうか?
例えば、アプリケーションの開発が終わって、全体で性能テストに入るとするじゃない。
そのたびにメモリー管理方式変えて性能テストやってたら、
アプリ開発部隊も「なんで何度も性能テストに付き合わんといかんの?」って言い出さない?
その検証に工数掛かるわけだし。
618 :
612 :2012/03/04(日) 22:23:16.98 ID:???
まぁ、どれだけ工数かけられるかだろうね... 俺がサーバリプレース対応したときは、鯖とNW専門でDB(SQLもselectすら知らんかった) 未経験状態の中で、人いないからお前やれよって上司に無茶振りされて対応したんで Oracleベンダーの研修を10日ぐらい受けて やっつけDBAになったんだ... だから、面倒な検証は省略しようって考えて自動管理を使いました。 ベンダーの研修でも、下手にチューニングするぐらいならOracleにやってもらったほうが エラーなくそれっぽく動くって案内されるよ。
>>617 ユーザが納得する性能が出せればそれでいいんじゃないの?
それに性能試験なんて最初から計画しとくもんだしそれを文句つけるのはおかしいよね?
MEMORY_TARGET,MEMORY_MAX_TARGETを設定するのと SGA_TARGET,PGA_AGGRGATE_TAGETを個別に設定して性能試験を行う意味が あまり無い様な気がする。 理由は自動チューニングされるコンポーネントがGROW,SHRINKされる際の動作は 今までとまったく同じ、両者で融通出来るかどうかがポイントなので。 であれば11gではMEMORY_MAX_TARGET,MEMORY_TAGETを設定し、 さらにSGA_TARGET,PGA_AGGRGATE_TAGETでそれぞれの下限値を設定するかな。 もちろん手動のコンポーネントも計算に含めての話。
>>601 oracle(EM含む)のインストールって「次へ」をクリックするだけで、
トラブル無く完了できるものだけど、それでインストールに失敗するっていうのは
なにか原因があるはずだから、それを示さないと良いアドバイスはもらえないよ。
最低限ログでこれが問題だというのを提示しないと。
搭載物理メモリ-システムが利用するメモリ-500Mくらい=MEMORY_TARGET で、オラクルに任せちゃえばー。って言ってるw Windows だと専用サーバの数(セッション数)の考慮とかも必要だったり するけど、大まかには使えるだけMEMORY_TARGETに。 性能試験中に DBA_HIST_MEMORY_RESIZE_OPS や V$*_ADVICE とかのビューを適当に確認しつつ、各パラメータの最小値を設定したり するくらいでいいんじゃないかな。 細かに設定する人って、夜間バッチと日中処理で、バッファとプールを リサイズしたりとかもするのかしら。
624 :
612 :2012/03/05(月) 00:54:37.00 ID:???
せっかくOracleが勝手にやってくるんだから えいやーで設定して、空いた時間を有意義に使おうじゃないか。。。。 時期リリース(12.1)には、専用サーバ/共有サーバの切り替えも自動的にやってくれる (リソースが空いてるうちは専用サーバ 辛くなってきたら共有へ切り替えていく) ようになると、うれしいなーと思ったり。
えいやーで設定した結果をちゃんと検証するならそれでいいと思うけど ユーザにえいやーで設定しましたって説明するの?
626 :
612 :2012/03/05(月) 22:56:19.60 ID:???
ワークロードに合わせて最適化してくれるんですよお客さん これから先、負荷の特性が変わってきてもチューニングし直す必要がないですよ って客を言いくるめるんだ。。 ちょっと気になって今日見てみたんだが、最近某不治通が構築した鯖も 完全自動管理メモリー(SGA/PGAの保障なし)だった... 何か常駐アプリを動かすようになったら 必要に応じてmemory_target上げ下げして調整してねって。。。
627 :
NAME IS NULL :2012/03/06(火) 00:23:24.27 ID:q2N8nL5O
>>600 お前は日々の業務の中でスループットという言葉を使ってないだろ
628 :
NAME IS NULL :2012/03/07(水) 02:02:33.09 ID:yVrPvOpV
create tablespaceで 増加サイズ: 初期エクステント ○K 次回エクステント ○K みたいに指定できるの? こういう風に作れって言われたんだけど。。。
>>628 ディクショナリ管理表領域を使えということかの。
でもいまどき?
マニュアル読め
631 :
NAME IS NULL :2012/03/08(木) 00:57:04.38 ID:V4B9ulKD
表の結合順序とかを指定したSQLプロファイルを作りたいんだができないよね。 マニュアルにも書いてないと思う。
質問です。 dbcaで制御ファイルのmaxlogbufferの値とか変更できますでしょうか? 制御ファイルのパラメータ変更したいのですが、dbcaから作成しようとすると 設定できないんですよ!!
(・д・)
maxlogbufferってなんやねん
>>632 DBAではないよな。アプリ屋か?その文調
>>632 だってDBCAはDB作るために使うツールだもん。
log_bufferサイズの値を変えたかったら、普通にinit.oraの修正だから、
spfile使っていたらalter systemコマンドでやるし?
しかしアプリ屋がlog_bufferなんて気にするかね? 何か他のパラメータと勘違いしてるんじゃね?
ADDMでlog bufferが小さいとかって上がって来たんじゃね?
>>632 なんか色々と間違え・・・・というか勘違いしてるなw
>>637 maxlogbufferはさておくとして初期化パラメータはdbcaでセットアップできるが
おまえの使ってるdbcaはできないの?
ああ、作成じゃなくて変更か・・・ 申し訳ございませんでした
DBCAで初期化パラメータの確認はできるはずだが、変更できたかは記憶が曖昧
>>643 dbcaでは見れないと思うよ
EMと勘違いしてない?
DBCAでDBを作成するときの話なら初期化パラメータをデフォルト値から変更することはできる
>>632 パケットキャプチャすれば一発
はい論破
>>643 だが
>>632 にもDBCAで作成するとって書いてんだから当然作成時の事で考えてたんだが
作った後ならコマンド叩いたら良いんじゃね
649 :
632 :2012/03/10(土) 18:19:20.15 ID:???
皆様すみません。 maxlogbufferではなくmaxinstanceとmaxloghistoryの値でした。 激務続きで、寝れてなかったので目がかすんでました。 質問内容はdbcaで制御ファイルのパラメータである maxlogbuffer、maxlogbuffer、maxlogbufferの値は 設定できるが、maxinstanceとmaxloghistoryの値を 変更できるような場所がなかったので、dbcaでは 設定できないのかな?と思い質問した次第です。
650 :
632 :2012/03/10(土) 18:26:11.13 ID:???
連投すみません。 >質問内容はdbcaで制御ファイルのパラメータである >maxlogbuffer、maxlogbuffer、maxlogbufferの値は ここは以下の記載の誤りです。 maxlogfiles、maxlogmember、maxdatafilesの値は 疲れすぎてて、体が動かないのですみませんが 休ませていただきます。
疲れすぎてて、体が動かないのですみませんが 休ませていただきます。 ???????????????? パケットキャプチャすれば一発 はい論破
なんか勘違いしてる気がするんだけど >maxlogfiles、maxlogmember、maxdatafilesの値 これらを初期化パラメータだと思い込んでるから見つからないんじゃないの?
あ、おれも勘違いしてるな 制御ファイルのパラメータって書いてあるじゃん・・・
なんでパケットキャプチャしないんだろ。 そんな疲れてる時こそ単純作業とかはパケットキャプチャに任せてしまえばよいのに。 もっと頭使えよな
655 :
NAME IS NULL :2012/03/10(土) 21:37:49.23 ID:GUAcdoGn
いきなりで恐縮ですが 10gXE(WIN版)で select sum(a) from ( select sum(金額) a,項目b,項目c,項目d from テーブルe group by 項目b,項目c,項目d ) のようなインラインビューの結果が狂う(上だとテーブルeの金額の合計にならない)現象の 理由をご存知の方いますか? 発生条件としては レコード件数がそこそこ多い場合(200万件程度)かつ 金額がそこそこ大きい場合(-1000000〜10000000程度)かつ あまりグループ化されない条件でグループ化する場合 に発生するっぽいことはわかったんですが ちなみに10gR1EEと11gXEでは発生しませんでした
>>655 ・XEの制限事項の確認
・実際のテーブル名とか項目名にマルチバイト文字を使ってるなら二重引用符をサボらずに書く
特定のバージョンでサブクエリーの結果がおかしくなる現象があったような気がするけど
あてはまるかどうか分からない
11gで試してみたら分かるかもしれない
>>650 Step 12ぐらいの表領域作成の時に、Control fileを選択して、Optionsの所で指定する。
専用サーバ接続だと正常にSELECTできて共有サーバ接続だとおかしくなるというおもしろいバグもあったな
なんだか笑えないなバグだなぁ。 バグがあるのはもう仕方ないことだけど、 SQL発行時やCOMMIT時にORA-が出るならまだしも、 なにごともなかったかのように誤った結果が返されると、普通に信じ込んでしまうよね。 あとDML発行して本当に意図したとおりにデータ更新されていなかったとしたら…? 考えただけでゾッとする。 これもいっそのこと、ORA-で落ちてくれたほうが少なくともデータが壊されないので許容(?)できる。
>>650 アンタ、相当疲れてるな。
言っても無駄な状況かもしれないが、しばらく休んだほうがいいんじゃね?
>maxlogfiles、maxlogmember、maxdatafiles
ん?
よく覚えていないが、DBCA云々の前に、これってDB作成後に直接変更できるんだっけか?
(違ったらすまん)
制御ファイルの再作成が必要なような気が。
alter database backup controlfile to trace からならいけたかな?
初期化パラメータの静的パラメータ変更するならALTER SYSTEMでスコープにSPFILEって指定するだけの話じゃねーの? 制御ファイル再作成って制御ファイルを損失した時にやる事じゃねーの? DBの設定値変更したくてするものじゃない気が
ここまで流れてもDB作成後に変更したいと言ってるように見えるのも相当疲れてるからじゃないの?
664 :
661 :2012/03/11(日) 09:48:39.62 ID:???
>>662 いや、これは初期化パラメータじゃない。
>>663 なんだ、そういうことか。
確かにDB作成後に変更したいなんて何処にも書いてないな。
俺の思い込みだった。
アンタの言うとおり、俺もだいぶ疲れているようだ。
これから寝ることにする。
>>649 大規模なRACを構成したいので MaxIncetance と Maxloghistoryの値を
CREATE DATABASE時(DBCA)に指定したいのかな?
RAC_HOMEにインストールされたDBCAを起動していますよね?
>>662 これらの値を変えたい場合には制御ファイルの再作成が必要。
まあ、backup control file to traceで出したのをチョコチョコって修正して
再作成すればいいだけなんだけどね。
>>655 パケットキャプチャすれば一発
はい論破
はい論破wwwwwwwwwww
くるりん破
670 :
632 :2012/03/11(日) 15:25:38.37 ID:???
皆さん、お疲れ様です。復活しました。 ・661さんのalter database backup controlfile to trace ;で traceファイルに出力されたcreate control文を修正して 制御ファイルを再作成する方法は思いついていたですが データファイルが壊れる場合があるのでdbcaの作成時に 制御ファイルのパラメータを変更する方法を検討してました。 ・初期化パラメータは見ていたのですが、該当する値がないため 候補から外していました。 ・今回の構成は665さんがお話しされていたRAC構成ではなく シングルサーバ構成ですが要件として制御ファイルの パラメータの変更が必要でした。 ・657さんの言われていた表領域作成時に、確かに maxlogfiles、maxlogmember、maxdatafilesの値は修正できるのですが、 maxinstanceとmaxloghistoryの値が変更できませんでした。 そのため、本質問をさせていただきました。 ・今回は必要ないですが、パケットキャプチャも大事ですよね。 ネットワーク設計はやったことないですが、ストームとか発生すると 大規模な会社のネットワークが平気でダウンするので、wiresharkの 使い方もっと勉強したいと思ってたんですよね。 以上です。
DBCAでスクリプト作成だけしといてそれを修正してDB作成するのが早いんじゃないかと思うけどなあ
>>670 >データファイルが壊れる場合があるのでdbcaの作成時に
>制御ファイルのパラメータを変更する方法を検討してました。
データファイルが心配なら、エクスポートしてとりあえず全部逃がしておけば?
てか、作ったばかりのデータベースなんて壊れてもええやん 作り直せばいいだけだろ
>>670 RAC OptionのDBCAで試したたぞ。
Step 14 of 15ぐらいで表領域の作成時にControl fileのOptionで指定出来るのは下記のパラメーター。
Maximum Datafiles
Maximum Instances
Maximum Log History
Maximum Redo Log Files
Maximum Log Members
解決したか?
便乗質問なんだが、 maxlogfiles、maxlogmember、maxdatafiles、maxinstance、maxloghistory これらのパラメータって、例えば小さい値を設定してたら、 あとからOracleがいいように自動調節したりするのはあり得る? いや、max〜ってついてる手前、そんなことはないと思ってるのだが。
>>675 10g以降は自動調整がきくはずなので
気のする必要はないはず
自分としては、どういう状況で変更が必要と思ったか知りたい
>>675 してくんない。
制御ファイルの再作成が必須。
678 :
675 :2012/03/13(火) 19:56:55.74 ID:???
>>675 この手の質問ってGoldレベルだろ。ここはホント似非DBAばっかだな。
680 :
NAME IS NULL :2012/03/13(火) 23:08:54.58 ID:bX+OoVee
>>678 調べてみた。
Oracle 8からmaxdatafilesはDB_FILESで指定した値まで制御ファイルの再作成無しに
自動調整してくれるようになった。
それ以外は制御ファイルの再作成が必要との事だ。
オジサン、Oracleは7から使っているから、これらの値を変えたいなら制御ファイルの
再作成が必須だとずっと信じていたよ・・・。
681 :
NAME IS NULL :2012/03/13(火) 23:16:24.50 ID:6Lw6RjVo
>>655 11. 2.0.1にはgroup byが正しく機能しない致命バグあり
サポートだな
ちなみにORA-エラーにはならない
>>681 そういうバグってあってはならない、致命的なバグだろ
許されていいのかな、そういうの。
そのバグが原因で人が死ぬかもしれないし、致命的な損害が発生するかもしれない。
Metalink見れば結構違う結果が返って来るバグなんてゴロゴロあるけどな。 何と言っても品質は80%で、後の20%は顧客がバグ出ししてくれるというスタンスで出している製品ですから。
Wrong Resultは本当にいっぱいある 日米の品質に対する意識の差かもしれない。 日本の顧客に合わせてのんびり品質上げてたら、たぶん今のシェアはない
違う結果の中には「現行バージョンでは修正不可」とかあったりするからなw
まあ、回避策で工数ゲットでウマウマ作戦だろ 現場は死んでるが
>>679 つまりGoldはDBAにあらず、Platinumまでいかないとダメと?
>>681 マジか?
XEはお試し版だからテストがアマアマという訳じゃなく、
ちゃんとした製品版でもその品質ってことか。
うーむ、テストのとき、何を信じたらいいのかね?
膨大な同じデータをAccessやMySQLに落として、別な方法で検算するしかないのかね?
なんだか本来のテストの意味がないというか、範疇を超えてる気がするな。
689 :
678 :2012/03/14(水) 05:36:57.86 ID:???
>>680 情報サンクス。
名前を変えないのは、きっと下位互換性のためだろうけど、
本来の意味でどっちがmaxなんだかわからんなw
>>681 10g XEで発生
11g XEで発生しない
って書いてあるから、それ関係ないじゃん
質問です。 DB上のデータの中に、第3水準以降の文字が入ってて、別の文字にコンバートが必要なのですが、何か一度に効率良くできる方法があれば、教えて下さい。 環境は10gです。
9iでも使えるよ EUCでNEC特殊文字を使えるようにしたキャラクタセット作ったことある
>>692 確か10.2からはalter convert charasetで一発解決できるはず
目的はCHARACTERSETを変換したいのか特定の文字を別の文字に変換したいのか
>>698 パケットキャプチャすれば一発
はい論破
このクソくだらないコピペを延々このスレで貼ってる奴は何なんだ これが例のアイちゃんか?
専ブラ使ってNG設定しろってばよ
パ。ケット。キャプ。チャす。れば一発 は。い論、破
もう、そこまでいくと真性のキチガイだ
今頃になって真性って気づいたのか
BB2CでNG設定するやり方あるなら教えて欲しいんだぜ
>>705 パケットキャプチャすれば一発
はい論破
ORACLEの運用に必須なことを教えて
分からない事、面倒くさい事、失敗したら被害甚大になりそうな事をスルーパス 出来る同僚を確保すること。
流れ切ってすみません。質問です。 oracle10g →11gに変えたことで同じsql文の実行結果が 劣化することはあるのでしょうか? 単純なselect文やinsert文に倍以上の時間がかかっており 困っているんです。
>>710 もしかして、TDE列暗号化を使ってる?
>>710 劣化が有り得るか有り得ないかの可能性でいえば、答えは勿論「有り得る」
正直、オプティマイザが変われば何が起こるかわからないのが
Oracleの恐ろしい所だと思ってる。
>>710 実行計画見るのが一番だけどな。
10g => 11gならRAT使って色々と洗い出ししていみるのも一つの手。
>>710 >単純なselect文やinsert文に倍以上の時間
selectはわかるけどinsertも?
as select とかで流し込んでるようなinsertだろうか。
>>710 デフラグした?
11gのインストールの時に「ついで」で作成されるデータベースに、
データをぶち込んだだけだったりすると、表領域が断片化して遅くなる。
10gのサーバを11gにインストールしなおす場合でも、
できればOSのインストールからやり直すのが最善だと思う。
せめてデフラグの手間をかけよう。
718 :
710 :2012/03/18(日) 18:03:45.18 ID:???
>>711 暗号化はしてませんです。
>>713 やはりオプティマイザの変更に伴うものですかね?
元のサーバのoracle環境触れないので、困ってるんですよね。
>>715 単純なinsert文もあります。
件数が十万〜百万単位であるのでパフォーマンスの劣化の
影響が大きくなるのだと思います。
>>717 デフラグも確認してみます
断片化の調査は後回しで暇なときにやればいいと思うよ
>>718 統計情報を一回、全部取り直してみたら?
>>718 パ。ケット。キャプ。チャす。れば一発
は。い論、破
,, -―-、 / ヽ / ̄ ̄/ /i⌒ヽ、| オエーー!!!! / (。)/ / / / ト、.,../ ,ー-、 =彳 \\‘゚。、` ヽ。、o / \\゚。、。、o / /⌒ ヽ ヽU o / │ `ヽU ∴l │ │ U :l |:! U
懐かしいなー もう辞めた仕事だから過去の話だけど、冗長化対応の一環で10gで動いてたPL/SQL バッチを11gの待機鯖で動かしたところ、いくつかのバッチがとんでもなく遅く なった事がある。11gのマシンは新規導入なので断片化とか関係無いし、H/W性能 で言えば待機鯖の方がわずかに上であるにもかかわらず。 実行計画が明らかに変化してたので、10gと全く同じになるようにhint句入れたり して対応したな。ぶっかけ、実行計画についてはOracleに任せるより自分でHint 句書いてある程度固定させるほうが安心するわ。
ぶっかけ(笑)
世の中にはHINT句を禁止してるシステムもあるで
>>725 イ`ヘ
/: :| ヽ
/ : :/ ヽ ___ _,,,:. .-: :´彡フ
_ノ\_∠: : : : : : : : :`: :-: :,:_:/彡 /
( : : : : : : : : : : : : : : `ゝ /
マ r::/: /: : | : : : : : : : : ::\ /
//: /: : : |: : | |: : |: _: : : :ヽ
ジ {/ 7|`\/i: /|:|/|´: : : : :|ヽ
〉 ,‐-‐、`|7 || |_::|,_|: : :|:::|: |
で / r:oヽ` /.:oヽヽ: :|: | :|
{ {o:::::::} {:::::0 }/: :|N
っ | ヾ:::ソ ヾ:::ソ /|: : |
!? ヽ::::ー-.. /ヽ ..ー-::: ヽ::| r--ッ
-tヽ/´|`::::::::::;/ `、 ::::::::::: /: i } >
::∧: : :|: |J \ / /::i: | /_ゝ
. \ヾ: |::|` - ,, ___`-´_ ,, - ´|: : :|:::|
ヽ: |::|\  ̄/ /| |: : :|: |
>>726 そんなのいくらでもあるぜ。
クソみたいなSQL文書いてるくせに、ヒント句禁止してたりとかな。
ヒントを使わずに実行計画を固定する方法「プラン・スタビリティ」(KROWN#23739)は、 次リリース辺りで非推奨になるとかいう根も葉もない噂を聞いたのだが、本当なんだろうか?
根も葉もない噂なら気にすることないじゃない
>>728 噂を信じる前に自分でパケットキャプチャなりしろよな
はい論破
ヒント句を禁止してる理由はなんだろう? Accessとかと他システムへの移植性が下がるから?文法ミスしてても分からな くてテストが出来ないから?標準SQLしか使ってはいけません、みたいな縛り? SQL記述の際にヒント句を使ってはいけません、ていうのは車を運転するさいに ハンドルはさわってはいけません、ていう位理不尽な気がする。
なんだその大げさな比喩
>>728 パケ、ットキ、ャプ。チャす、れば一。発
はい。論・破
734 :
NAME IS NULL :2012/03/19(月) 22:22:39.70 ID:vjc9+RJV
プラン・スタビリティ(ストアド・アウトライン)は現バージョンで(11g)から非推奨。 今後のバージョンでは サポートされなくなる予定。 ストアド・アウトラインでググると出てくる
735 :
728 :2012/03/19(月) 23:06:26.24 ID:???
>>734 ありがとう。ググってマニュアルも確認できた。
>>731 >ヒント句を禁止してる理由はなんだろう?
ヒントが裏目に出て、パフォーマンス劣化が発生した場合、
その責任をアプリ屋が負わなくてはならなくなる。
ならヒントを書かず、最初から全てOracleに任せてしまおうというのが、
うちの会社のアプリ屋の言い分だった。
>>736 初期構築の場合は、ヒント句で固めると裏目に出ることがある。
テーブルにある程度データが溜まってきてからヒント句を追加したほうがいいからね。
>>736 うちはHint句を書かない結果パフォーマンスが出なくても、アプリ屋の責任
にされるけどね。
>>737 それって開発時からある程度データがたまってる想定でパフォーマンス検証
しない?
739 :
NAME IS NULL :2012/03/19(月) 23:35:25.01 ID:K2/W8jIo
ホリエモンのブログ 元ニート でググれwwwwwwwwwwwww こいつのブログ痛すぎwwwwwwwwwwwwwwwwwww チョン総叩きワロタwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww
>>740 RACって名前だけで難しいと判断しちゃってる雑魚
これ取ってもあんまり得はないな
いや実際に10gR2のRACは難しいだろ
確かRAC認定はGOLDが前提資格だっけか 色々とハードル高いのは間違いないな
RACなんて、CPUがメニーコアになった今となってはサーバコストも管理コストも大きい無駄でしかない。 合計48コアのCPUと1TBくらいのメインメモリで動かせば、SQLなんかバカ早になったよ。
Oracleのライセンス費がいくらになったかが気になる
実行計画って何単位で作成されますか? 同じスキーマで同じSQL(sql_id)に対して1つの実行計画と思いきや V$SQL_PLANを見るとそうでもない。しかも実行計画も違ってたりする。 セッション単位?
>>744 ふ〜んw
で、そのサーバにH/W障害が発生してダウンしてる間は処理はどうするの?
>>748 SBY系に切り替えだよ。 うちはお金あるから48コアマシンを2台FCでつないでSBYは遊ばせておくのさ。
ならその2台でRAC組めばいいだけの話では?あと >うちはお金あるから48コアマシンを2台FCでつないでSBYは遊ばせておくのさ。 今時、サーバを2台立てるとか当たり前なんであんまり恥ずかしい発言しな いほうがいいと思う。ちなみに某ストアは運用-待機のRAC構成を2重化して計 4台体制。
,, -―-、 / ヽ / ̄ ̄/ /i⌒ヽ、| オエーー!!!! / (。)/ / / / ト、.,../ ,ー-、 =彳 \\‘゚。、` ヽ。、o / \\゚。、。、o / /⌒ ヽ ヽU o / │ `ヽU ∴l │ │ U :l |:!
仮想化全盛時代が来てもDBAは生き残れまつか?
48コアCPUと1TBメモリ詰めるハードが思いつかない件 Opteron 6100 12コアの4wayでも、メモリ1TB詰める鯖ってなかなか無いんだけど コアあたりの性能が最悪で SEまでにエディション押えないと 無駄にライセンスコストだけ高くなる悪い例だな...
>>752 この先生きのこれるDBAもいるけど、一ついえるのは君は生き残れない。
君は生き残れない。
>>754 はっきり言って、あんたみたいなロートルは去れ。今すぐ。
>>752 DBA自身も仮想化に対応すればいいだけ。
>>755 =752
そんなに顔真っ赤にしなくてもw
>>752 逆に生き残れないと思ったのはなぜ?DBはなくならないだろうが
仮想化っていう単語を覚えたから使ってみたかったというのが犯行の動機なんじゃないかな
760 :
740 :2012/03/22(木) 00:44:42.28 ID:???
>>744 いや純粋に試験の話をしたかっただけなんだが、、、
なんで実物を否定する所から入るかな。
間違いない、、、 クラウド、仮想化 IaaS DaaS SaaS PaaS 専門用語連発する人がいて もうわけわからん。日本語でおkって気持ちがよくわかる...
>RACなんて、CPUがメニーコアになった今となってはサーバコストも管理コストも大きい無駄でしかない。 >SBY系に切り替えだよ。 うちはお金あるから48コアマシンを2台FCでつないでSBYは遊ばせておくのさ。
N+1のクラスタにすれば遊休ハードウェアは少なくできる。 たいして必要もないのに ハードウェアより遥かに高額なプロセッサあたり250万円のRACライセンス費用と 22%から始まって毎年値上げされることになったサポート費用を払うことはできない。
サポート費の毎年値上げってのはまるで高利の街金的思考だよな こんなの法律で規制すべき
おまえらみんな 9i時代以前の歩く化石だろ!
「ORACLEは高い」は都市伝説 なんて寝言を必死にアピってた事もあったな
絶対的な価格だけじゃなくて、そこから生み出される価値とか、長期的に見た 場合の運用保守にかかる費用、ハード代、プロセッサ係数諸々全部を考えたら Oracleは決して高くない。 というかむしろ他のRDB(Sybase、DB/400、SQLServerは言うまでも無く、OSS のpostgresqlやmysqlも含めて)と比較しても十分安い。 特に、精通した技術者が多いというのがメリット高い。
なんでこんな素人的な話で盛り上がってるの?ここって20代前半の集まり?
そうだけど? あなたはどの時代のおじさん?
なんで?
RACはセション分散とか性能よりも可用性のためじゃねーの? いくらいいCPUやメモリ積んだとこで鯖落ちたらサービス停止とかあり得ないわ
まぁ可用性を重視するなら、RAC+DataGuardだろうな。
>>753 はネタなんだろうけど、
RACではないとプロセス障害 or インスタンス障害発生しただけで業務が止まるからなぁ。
性能の面でしかRACを捉えていないってことは、その程度なんだろうな。
>>774 ラックってクラスタウェア障害起こると大変だよね。OCR不整合とか
DBA辞めるわ
ついでに会社もやめるとスッキリするよ。マジで。
>>775 そんなにCRSリソースに変更がある訳ではないだろ?
だったらOCRの不整合はバックアップから戻せばいいからそんなに悲惨ではない。
技術的な質問じゃないんだけど このスレってOracle本社で働いてる人いる? オラクルカスタマーサポートの人も新卒入社なの?
>>779 元日本Oracleだったけどな。
サポートには当然プロパーもいる。
自宅PCにOracle環境構築して勉強してたりすんの?それとも就業時間中に勉強しちゃう?
人それぞれだろ アンケートでもとりたいなら2chは不向きじゃないの?
入社時にスキルセットに合わせてトレーニングコースが準備されている。 後は米国本社にトレーニング受けに行ったりとかもある。 でも最近はサポートも結構インドに投げられていたりるすからね。 俺がいた頃から大分変わっているんじゃないかな?
まぁDBA名乗るのであれば、家でも入れるべきだと思うよ、
Oracleの資格試験の勉強用に入れるくらいじゃないのかな おれは試験受けたことないから自宅ではやってないけど
>>783 >サポートも結構インドに投げられていたり
大いに結構 バンガロールの連中は英語堪能だし。
英文の技術文書も読みこなせない奴がいる新日鉄よりはるかに優秀。
>>784 別に家に入れなくても、会社の鯖にサンドボックスDBとか普通にあるからなぁ。
oracle 11g r2をwindows 7 32bit sp1にインストールしたいのですが チェックのところでメモリが失敗になってインストールできません。 メモリは4ギガあるんですが・・・なぜでしょうか?
もしかして:Windows7 Home Premium もしかして:oracle 11g r2 64bit
すみません。すべて無視したらインストールできました。
memory fault をメモリーが失敗って訳すのか・・・というか、インストーラがメモリー障害を報告してるのを 無視してインストールできたと納得してしまうところに驚いた
>>791 世の中そーゆーやつ多いよな。エンジニアやめた方が良いと思うわ
向いてないし客にも迷惑かける。なにも良いことないよ
ITの知識無い人に自分の仕事説明するときなんて言ってる? 初対面の人とかに簡潔に説明したいんだけど DBを〜とかOracleを〜って説明しても鬱陶しいよね・・・
初対面の相手のレベルによるだろ常考。
朝から晩までパソコンいじってます〜 って説明してる
コレも言っとかないと不親切だよな・・・ 客から 最速ハードのORACLEを用意してくれ、と言われたら Oracle Exadata Database Machine を紹介せざるを得ないと思ってる。 Data Sheet(PDF)(英語)を読んでみて。
>>797 Oracle Exalytics In-Memory Machine ってのがあると聞いたのだが、
これってどうなんだろ?
>>796 ハードとは直接関係ない話なんだが、
FだとやっぱOracleよりもSymfowareを薦める?
>>798 分析系だから、Exadataとは用途が違うんじゃね
分析系はTERADATAでガチ鉄板
Exadataももともと分析系向けだったと思うが。
>>799 の記事を読めばいいと思うが、Exalyticsに入ってるのはOracleのBI製品って書いてある
DBとは別物だろ
OracleでBIって言ったら買い取ったHyperionじゃね?
>>800 >FだとやっぱOracleよりもSymfowareを薦める?
「Oracleで」「SQL Serverで」「OracleかSQL Serverのどちらかで」
と指名してくる比率が多いよ。
昔は、バカの一つ覚えのようにSymfoで提案して、やっぱり負けましたーだったもんで。
それへの反省もあってお客様の意向とか
傾向(過去Oracleを選ぶことが多かった、みたいな)を優先するよ。
Fの開発部隊ってスキル無いよね。 一番酷かったのは、PL/SQLでエラーハンドリングしていなくて、 DBから接続解除されただけなのに「DBに接続出来ない!!」って 大騒ぎした事。
>>807 玄孫請けに仕事させてるんでしょ
曾孫がいいところで孫受けで仕事してるってのは珍しいんじゃないか?あの会社
なるほとね。 とにかくエラーログの取得方法を知らない・間違ったログを出して来る・取得出来ても 読めないと、最悪だぞ?
下請けが作ろうと納入先に品質を保証する責任があるのは元請
>>807 脱税で捕まった社長の会社の人もいたし。
バージョンアップも満足に出来なかったね。
責任は負いましょう!でもデスマになるまでは基本なにもしないからね♪ つまり、名実ともにただの保険会社
Fの開発部隊って優秀さよりも人数と根性と気合でなんとか しようとするというので有名だしな。 それに付き合わされるDBAはたまったもんじゃないけど。
>>813 数十人のAPチームでシフト勤務の24時間体制に対して
DBA2名とか余裕であるからなw
ここぞとばかりにF叩きが始まったな 何かいいことでもあるのかい?
新入社員へのエールだな
流れぶった切ってすまない パラレル実行の並列度をDOPっていうみたいなんだけど何の略? 自分の想像だと↓こうなるんだけど O が分からん D: distribution ? O: ? P: paralleling ?
degree of parallelism
そう言えば、富士と名がつく企業って碌なのが無いよな??
なんだそりゃ?どこまで話を広げりゃ満足するんだ?
>>814 自分たちが勝手にデスマ化させて24時間体制になったら
「DBAもそれに対応して貰わなければ困る(`・ω・´)キリリッ」
とかって平気で言ってくるしな。
>>815 Fの開発部隊と一緒に仕事するときの心構えが出来る。
連中の話聞いててなんかおかしいなと思ったら実行計画を見たことが無いとか抜かしてやんの インデックスを使ってるかどうかすら確認したこともないらしい それで数千万レコードのシステム作るつもりなんですか?w目の見えない連中は勇敢だわw
そこまで本気で仕事する気ないからね・・・
さすがに捏造したネタには誰も食いつかないようだな
SQLを書く際に、実装から納品まで一度として実行計画を確認しない人なんて ザラにいるよ。開発中なんてレコードも全然少ないから糞みたいな実効計画 でもパフォーマンスのネックに気が付かないし。 3年後に3億レコードになってるなんて分からないしね。 で、大体が数ヵ月後にパフォーマンス改善という追加開発で対応します。
それでいいじゃん
実際に悪くなったところだけ直すのは効率的かもしれない 商用環境でトラブル起こしていろいろ怒られるとは思うけど
そもそも、開発環境と実環境で実行計画が違うことはよくあるしな。
>>826 Fの開発部隊のレベルの低さは事実だけどな。
Fの開発部隊>小杉駅前の子会社や孫受けの連中だろ。 F本体の連中は優秀なのも多いミドル層が充実している中国には 今後敵わないしジリ貧だろうね。
訂正 F本体の連中は優秀なのも多いが、ミドル層が充実している中国には 今後敵わないしジリ貧だろうね。
なんかFに恨みでもあるんだろうけどスレタイ見てみろとだけ言っておく
何の恨みがあるんだw
Fの開発部隊におけるOracleの知識レベルはどの位かとの質問だと理解したので。 実際低いし実例を幾らでも挙げる事が出来る。 恨みは無いが余計な雑用が増えて本質的な仕事の時間を奪われるから 関わり合いになりたくないだけ。 実例1 某銀行のリカバリでarchive log file の一部が失われた場合、 後続のシーケンシャルをOSレベルでmvし失われたシーケンシャルに書き換えようとした。 新橋の課長レベルが実行、テストまでした。基本を理解していない好例。
まあ、Fに限った話じゃあないな
>>836 >新橋の課長レベルが実行、テストまでした。
もしかして、arch log fileをmvした後にrecoverするというテスト項目があって、
それが正常終了するという結果になっていたのか?
エスパーが現れたな
Oracleの知識レベルwwww
>>838 概ねその通り。
テスト項目には無かったが、連続するファイルの途中の一部を損失しても
mvでシーケンシャル部分を書き換えれば、直前までの不完全リカバリは可能との認識だった。
孫受けのDBAの進言が通ったらしく、実際にテストまでした。
10g以降のresetlogs識別子や多重化している場合に1系統さえ残ればリカバリ可能な事が
中途半端でごった煮になっている印象。
>>836 Fの開発部隊と関わり合いにならずに済むのならそれに越した事はない。
今、思い切りアプリの担当がFでデスマ化させていて、しかも思い切り
スキル無しの烏合の衆が大量に投入されている。
Fの開発部隊(キリッ
>>842 避けられないDBAの人達の健闘を祈ります。
烏合の衆が大量に投入> Fが為に金は成る。
FがFがと連呼してるのはやはり何か恨みでもあるんだろうよ F以外でも大差はないんだから
恨みは多少はあるな。 Fのアホ共のせいで余計な仕事が増えたり、100%アプリの問題なのに 電話かけて来たりする訳だからな。
100%アプリの側の問題なのに「自分たちでは解決出来なかった。協力に 感謝する(`・ω・´)キリリッ」とかって言い出す始末だからな。 てめぇらの腐ったアプリなんか知ったことかよ。
3/31付で解雇された派遣が粘着してるのかな? とりあえず >846-847 は早めに首吊ったほうがいいと思うよ?
たしかにFがFが言ってるけどTの下請けなんてもっと酷いぞ
851 :
NAME IS NULL :2012/04/02(月) 02:52:58.91 ID:5fensDT6
どうせなら有能なところ書いてくれたほうが役に立つんだが... Fサポートが話にならなくてアシストに助けてもらったことはあるが
852 :
NAME IS NULL :2012/04/02(月) 22:48:08.13 ID:ly8VZPEZ
今、Server2008R2(x64)に Oracle Database 11g Release 2 (x64) - Version 11.2.0.1が入ってます これのODBC接続に問題があってメモリリークしてます 解決策がわからないのでとりあえずOracleサイトにあった 64-bit ODAC 11.2 Release 4 (11.2.0.3.0) for Windows x64を入れてみようと思ったのですが Versionが11.2.0.3.0と11.2.0.1で違っています。 これは入れても動かないんでしょうか?? 同じDLページに、 Oracle Database 11g Release 2 (x64) - Version 11.2.0.3 というのがあったのですがこれを入れないと 64-bit ODAC 11.2 Release 4 (11.2.0.3.0) for Windows x64を入れても意味がないですか?? Oracle Database 11g Release 2 (x64) - Version 11.2.0.3 をダウンロードしようとしてもエラーで弾かれるので出来れば Oracle Database 11g Release 2 (x64) - Version 11.2.0.1に 入れたいと思っています。どうなんでしょうか?
この手の質問するひとのプロジェクトってサポート契約してないってことなんだろうなあ 運の悪いお客さんだ
>>852 窓鯖にはDBが動いていてそのバージョンが11.2.0.1という理解でいいのか?
でもって、ODACの11.2.0.3を窓鯖入れたいという事だよな?
だったら別に既存のDBのバージョンを11.2.0.3に上げる必要はない。
855 :
NAME IS NULL :2012/04/02(月) 23:07:10.06 ID:ly8VZPEZ
>>854 そのとおりです
返信ありがとうございます
こんなのがいて こんなのに金払う奴がいて 日本終わるはずだよ(´・ω・`)
バブルの頃はもっとヒドかったんだが
858 :
NAME IS NULL :2012/04/03(火) 23:11:41.14 ID:Mxf997Dq
久しく Oracle ってないのですが、最近の Oracle でSQLの in で値が1000個とかの場合、 索引は全て効率的に使われますか? 昔だと、orと同じく、遅くなってしまったと思いますが。
>>858 INLIST ITERATORは8.0から変わってないと思う。
気になるならINDEXヒントをつけるくらい
TABLE作って結合したほうがいいんじゃないの?
レス、ありがとうございます。
>>859 ということは、基本的には効率的に索引が使われるということなんですね。
>>860 テーブルと等値結合する方が、さらに速かったりするような気もしますね。
さすがOracleだなぁ(最近、MySQL ばかり)。
なもんレコード数とカーディナリティとクラスタ化係数による
>>862 極端な例は想定しなくて結構です。
件数は10〜1000万とか。
こわい
この糞ソフトがDBの主流ってだけで 意味不明なサポート契約結ばないと安定稼働しないし 導入時の質問すら契約ありますか?ってちらつかせてくる てめぇらの作ったソフトの仕様がゴミだから!バグがたくさん発生するから仕方なく契約結んでやってるのに 本来何らかの機能が停止した場合、急いでそっちが駆けつけてきて対応しなきゃいけないんじゃないのか? 何でわざわざ契約笑したサポートに質問して自分たちの手で直さなきゃいけないんだよカス
確かにオラクルと関わってるとマイクロソフトが神に思えてくる
868 :
NAME IS NULL :2012/04/05(木) 02:42:48.88 ID:gqHiW6Oe
>>867 すくなくともバグ情報は公開してることが多いもんね
昔って一部のKROWN見えたよね?いつのまにかなくなったけど
OTNが統合されたあたりからフレンドリーじゃなくなってきたなあ
869 :
NAME IS NULL :2012/04/05(木) 03:12:38.09 ID:DZ5S8X2t
今もKROWNとか、契約なくても見れるよ。一般公開のやつだけみたいだけど
パッチも不具合情報も購入者には公開するのが提供者側の義務のはずなんだけどな いつの間にかOracleのビジネスモデル(笑)にモラルが踏み潰されてるというのが現状だ
このまま殿様商売しててもDBは安泰なのか? それなら今の体勢で良いと思うが、調子乗ってると痛い目見そう
>>870 そんな義務はない。
サポートがタダだと勘違いしてるモンスターSE乙。
社員乙
SELECTの結果がまともに返せないバグですら「有償」サポートでしか対処方法が分からんし 金払わないとその情報を知ることさえできないんだがどっちがモンスターなんだぜ
Oracleの洗脳戦略はある程度成功してると言えるのかもしれんな 有償サポートとは分けてバグ情報とパッチをオープンにしているもの SQL Server DB2 UDB Informix(笑)
>>875 ステマ乙
Windowsでしか動かないSQLServer(つまりSQLServerが売れるという事はペアで
Windowsも売れている)と、Windowsの上でも動いてしまうOracleを同列で比較
するのはあまりにナンセンス。
そりゃ話のすり替えじゃん
Oracle社員じゃないなら確かに洗脳されてるな
WindowsサーバーにOracleは似合わない
Windows版だと未だに自動起動失敗するケースがあるしな
>>872 な〜にがサポートだよ
欠陥製品売りつけておいて
操作ミスではない、製品のバグに対してなんでこっちが金払って解決法教えてもらわなきゃいけないんだよw
>>881 こっちが使ってくださいとお願いしてる訳じゃないんで、そんなにOracleが
嫌ならさっさと別のベンダのRDBMSに変えれば?
各社があちこちで使ってくれって宣伝してるわけだが
なんかまたヘンなのが沸いてるな
Oracle OpenWorldどうだった?
相変わらず気持ち悪い感じだったよ
と、今回スポンサー落ちしたH○がおっしゃっています
Oracleで、DDL(create table文)に tablespace で表領域の指定があっても、 強制的に別の表領域にテーブルを作らせる、ということはできますか? あるいは、表領域に別名の表領域名を作ることはできますか? ○やりたいこと: 本番環境のOracleには表領域が30個ぐらいあり、テーブルの DDL も tablespace 句付きで、subversion で管理しています。 しかし開発者ごとの開発環境では表領域を1つで済ませたいのですが、 subversion から取り出したDDLは tablespace句付なので、 そのままエラーなく流すためには、開発環境にも30個表領域を作るか、 DDL から tablespace 句を外して流さないといけません。 とくに後者は面倒です。 そこで、 > create user HOGE identified by PASS default tablespae USERS; で作ったスキーマがあるとして、DDL に tablespace の指定があっても、 DDL を実行したらエラーにならず、作成したテーブルは USERS 領域に作成される、 ということをしたいのですが、何かいい方法はないでしょうか。 やっぱり DDL を一切修正しないで実行したい場合は、表領域を30個作っておくしかないでしょうか?
890 :
NAME IS NULL :2012/04/06(金) 19:56:22.82 ID:Nt21VYa5
>>889 パケットキャプチャすれば一発
はい論破
>>889 多分無理じゃねぇかなぁ。
シノニムもtablespaceには張れないだろうし…。
892 :
NAME IS NULL :2012/04/07(土) 00:15:05.34 ID:UYida1c+
>>889 一括置換できない理由があるの?
開発者ごとに初回でやるだけならそんなに手間でもないと思うけど
>>889 subversion 使ってソース管理しか駄目。
だと無理だけど、DataPump で
expdp CONTENT=METADATA_ONLY
impdp remap_tablespace=TBS1:TBS2
みたいに、定義から TABLESPACE だけ変更して Import することができる。
チラ裏 開発と本番でソースが違うってのが俺的には怖いというか、良いのかそれで? て感じがする。俺なら開発環境を可能な限り本番に合わせるかな。 開発環境でテストが完了したら、一字一句一切書き換えずにそのまま本番に持 って行くのが理想。
>>889 なんかsedなりperlなりで一括修正出来るスクリプト作った方が早そう。
この糞ソフトがDBの主流ってだけで 意味不明なサポート契約結ばないと安定稼働しないし 導入時の質問すら契約ありますか?ってちらつかせてくる てめぇらの作ったソフトの仕様がゴミだから!バグがたくさん発生するから仕方なく契約結んでやってるのに 本来何らかの機能が停止した場合、急いでそっちが駆けつけてきて対応しなきゃいけないんじゃないのか? 何でわざわざ契約笑したサポートに質問して自分たちの手で直さなきゃいけないんだよカス
な〜にがサポートだよ 欠陥製品売りつけておいて 操作ミスではない、製品のバグに対してなんでこっちが金払って解決法教えてもらわなきゃいけないんだよw
なんだ、デジャヴか?
>>898 こっちが使ってくださいとお願いしてる訳じゃないんで、そんなにOracleが
嫌ならさっさと別のベンダのRDBMSに変えれば?
>>889 sedとかで一括変換すればいいんじゃね?
それこそこんなんで済みそうな悪寒・・・。
cat hoge.sql | sed -e "s/表領域1\|表領域2\|表領域3\|....\|表領域30/USERS表領域/g"
>>900 大口叩くのは600吐かなくなってからにしろと
みなさんレスどうもありがとうございます。
やっぱりこちらの期待したことは無理ですね。
>>891 synonymも無理でした(というかsynonymを使って別名を付けてもテーブル限定みたい)
sedなどで置換することも考えましたが、
・置換前、置換後の二重管理はしたくない
・開発環境に流す前にsed等を使って tablespace の指定はカットする、は
自分一人だったらかまわないけど、うちの環境では多分根付かない。
→sedって何? コマンドプロンプトって何? というレベルのメンバーが多い。
→置換し忘れて開発環境に流して、「tablespace HOGE はありません」って
エラーが出ても、「あ、置換す忘れた」って気づける人がいない
→というか svn リポジトリから checkout して、なるべく手順を増やさないで
DDLを流せるようにしたい。
ということで
>>894 の考え方の通り、開発環境に30コ表領域を作ってしまう
ことにしました。
みなさんどうもありがとうございました。
ほんとオラクルは潰れてほしいと思ってる
で、Oracleが潰れたらどこのRDBMSを使うわけ? あと、潰れて欲しいと思うなら使わなければいいと思うよ。
昔MicrosoftがOS部門を分割させられそうになったように、 Database部門とそれ以外を分割、あたりがうれしいな。
素朴な疑問 そんなにORACLEが嫌ならMSSQLSERVERでもDB2でも別の選択肢はいくらでも あるのに、なんで文句垂れながらもORACLEを使い続けるのか。 ツンデレなの?
新規開発なら可能な限り避けてるよ。 継続開発は今更製品乗り換えたらかえってコスト高だし
911 :
NAME IS NULL :2012/04/10(火) 23:30:04.22 ID:n7SqbTi9
Windowsの新規案件はSQL SERVERになることが多いなあ やっぱりライセンス料で偉い人がびびる
>>911 Windowsの案件というのが良くわからないが、古き良きクラサバ?
いまだにLinuxを認めずに、UNIX or Windowsという状況?
>>912 古き良きじゃなくても、どうしてもお客さんの文化で
Windowsじゃなくちゃいやだ、という会社もあるんだよ。
中小でもあるし、超大手でもある。
たとえばJがつく鉄道会社の一部門とか。
もちろん、すべてのシステムがそうではないけど。
このまえみかけたのは、.NET(IIS + ASP.NET) + SQL Server という組み合わせで、
そっち方面ではそれなりに新しい組み合わせだったな。
保守運用を自分たちでやりたいので、あとサーバOSをWindowsにしておきたい
ということを顧客からよく聞く。
Unix系OSにすると、「こまんどらいんわからないから」らしい。
>>912 新規案件でLinuxとか候補に挙がることすらねーわw
えーマジWindows!? Windowsが許されるのはSQL Serverまでだよね!
916 :
NAME IS NULL :2012/04/11(水) 14:03:45.28 ID:BydGJ8ZY
OracleDBにOpenClose繰り返すとメモリークするのどうやったら治りますか? 最新パッチでも治ってないんですけど
一般的には常識とされている、 真実は一つだけ 怒りは自然な感情 戦争・テロは無くならない 死刑には殺人の抑止力がある 虐められる側にも虐めの原因がある 自己チューな人間ほど自己愛が強い などの間違いを解説ちう m9(`・ω・)ビシ 義務教育では教えない最新哲学 感情自己責任論
>>916 リークするのはサーバーが?
どのくらいリークしているかどうやって確認したんだろうか。
>>918 クライアント側です
ODBC接続でOpen/Closeしてるときまった容量が増えていきます。
921 :
920 :2012/04/12(木) 08:50:15.55 ID:???
追加情報ですが DBのVerは11.2.0.1で、ODBCも同じVerを使ってますが 11.2.0.3のODBCドライバがあったのでそれのクライアント版を使ってみました。 そしたらメモリ+ハンドルまでリークしだして…どうしたものやら…
保守契約してサポートに聞くしかないんじゃない? ざっと見た限り11gR2に既知バグはなさそうだけど。
事情で保守契約できないんですよね…某大国の客さまで… 個人レベルじゃOracle買えないし 一応OTNのForumに似たような症状はありますけど未解決 Oracleはわかってて知らんぷりな気が…
状況がよくわからんが、問題がなかったバージョンに戻せばいいんじゃね?
そういうビジネスモデルだからな
926 :
NAME IS NULL :2012/04/12(木) 23:52:56.82 ID:3ZXM8E3g
>>919 まず、sqltraceして、本当にパースで時間がかかってるのか調べる
・条件句のリテラル値の違いで実行計画が変わるのがいやならバインド変数使う。
・ヒント句使って実行計画を固定する。
ほんとに実行計画の生成で時間をくってるなら、
・_optimizer_max_permutationsでググってみる。
・event 10053でぐぐってみる。
ODBCとかoo4oとかパッチなしとかもうそろそろそんな素人仕事はヤメロ
PUSHED PREDICADEを期待した実行計画が 崩れてサブクエリ側がフルスキャンになってしまった。 PUSHED PREDICADEってあんまり使わない方が いいのかな?
この糞ソフトがDBの主流ってだけで 意味不明なサポート契約結ばないと安定稼働しないし 導入時の質問すら契約ありますか?ってちらつかせてくる てめぇらの作ったソフトの仕様がゴミだから!バグがたくさん発生するから仕方なく契約結んでやってるのに 本来何らかの機能が停止した場合、急いでそっちが駆けつけてきて対応しなきゃいけないんじゃないのか? 何でわざわざ契約笑したサポートに質問して自分たちの手で直さなきゃいけないんだよカス
そろそろ迷惑行為で通報してもいいかな
な〜にがサポートだよ 欠陥製品売りつけておいて 操作ミスではない、製品のバグに対してなんでこっちが金払って解決法教えてもらわなきゃいけないんだよw
もしかしてIDが見えないからIPアドレスが割れないとでも思ってるのかもしれん
BIGLOBE(大阪)が規制されてた期間中は大人しかったようだな
____ . / ― '' ー\ / ( ●) ( ●)\ もしかしてIDが見えないからIPアドレスが割れないとでも思ってるのかもしれん / :::::⌒, ゝ⌒:::::\ | `ー=-' | \ ⊂、ヽ、_∩ / . , -‐ ´ \ '、 ヽ ! ` ー-、 / __ ヽ ー、 \ | ∧ . 〃 ,. --ミヽ ヽ \ ヽ |/ハ ji/  ̄` ` ヽ . {{ ' ____ . / ノ '' ⌒\ / ( ● ) (● )\ / :::::⌒, ゝ⌒:::::\ | `ー=-' | \ ⊂、ヽ、_∩ / . , -‐ ´ \ '、 ヽ ! ` ー-、 / __ ヽ ー、 \ | ∧ . 〃 ,. --ミヽ ヽ \ ヽ |/ハ ji/  ̄` ` ヽ . {{ '
こっち見んな
コピペするだけの単純なお仕事です
障害発生でよくわからんエラーが出まくってたからMOSで調べようと思ったらメンテで見れないってナニコレ
なんだろうね
939 :
NAME IS NULL :2012/04/14(土) 21:57:47.48 ID:12ukUuZD
モス使いにくいしくそ重い
>>926 >実行計画が変わるのがいやならバインド変数使う。
11gではバインド変数を使用しても、同じ実行計画を使用するとは限りませんね。
11gより前は単純なバインドピークだからある意味安定していたとも言える
____ . / ノ '' ⌒\ / ( ● ) (● )\ / :::::⌒, ゝ⌒:::::\ | `ー=-' | \ ⊂、ヽ、_∩ / . , -‐ ´ \ '、 ヽ ! ` ー-、 / __ ヽ ー、 \ | ∧ . 〃 ,. --ミヽ ヽ \ ヽ |/ハ ji/  ̄` ` ヽ . {{ '
11gでは単純じゃないバインドピーク
なの?
なの
例外が発生した際のエラーログに例外発生行番号を出力させているんですが、 (FORMAT_ERROR_BACKTRACE使用)for rec文を使って 4:for rec in (select * from foo) 5:loop 6: 7: select sex into v_sex from m_user where user_cd = rec.user_cd 8: 9:end loop このような例でもし7行目でNO_DATA_FOUND例外が発生しても、7行目ではなく forブロックの先頭行である4行目の行番号が報告されてしまいます。 何とかして7行目の行番号を得る方法は無いでしょうか? Oracle10gです。
____ . / ― '' ー\ / ( ●) ( ●)\ もしかしてIDが見えないからIPアドレスが割れないとでも思ってるのかもしれん / :::::⌒, ゝ⌒:::::\ | `ー=-' | \ ⊂、ヽ、_∩ / . , -‐ ´ \ '、 ヽ ! ` ー-、 / __ ヽ ー、 \ | ∧ . 〃 ,. --ミヽ ヽ \ ヽ |/ハ ji/  ̄` ` ヽ . {{ '
(´・ω・`)アベンジャーズの壁紙かとオモタ
久しぶりにOracle Technology Networkにアクセスしてみたけど、今は Oracle.comのユーザー登録をすれば、最新版のOracle Database 11gの Windows版がダウンロードできるみたい。 以前は、例えば最新版がOracle10gの時だったら、Oracle9i までしかダウン ロードできなかったと思う。
>>952 それはダウンロードできなかったんじゃなくて、見つけられなかったんだろ
それくらい使いづらかったw
>>952 Enterprise Editionもタダだしな。
あとWindows版に限らないぞ。
零細企業だと、サポート無いリスクを覚悟の上で (勿論バレた時のリスクも覚悟の上で)、 実際使っちゃってるとことかありそうだよな。
そこまでして使わなくても、XEを使えばええやん それどころかMySQLみたいな選択肢もある訳だし
そういうところは円満退社できない社員が多いだろうから すぐに密告されるよ
ちげぇねぇや。
ブロンズを目指してみたいんだけど、sqlって適当なフリーで置いてあるようなものでいいんでしょうか? それとも皆、ちゃんと数万かけて買って勉強しているんでしょうか?
何を買うんだ? 参考書?それともOracle?
参考書で数万はないだろ 試験勉強で使うならオラクルは無料で使えるぞ
>>953 Oracle10gの時の時も最新版の10gがダウンロード・インストールできたと思
うが、30日間の使用制限があったような。
旧版の方が探しづらかった。
>>959 私がOracle Masterを取った時の受験勉強は、多分、PrometricのWeb pageの
問題集を使ったと思う。
実際の試験問題とよく似た問題が出たが、料金はかなり高かった。
965 :
NAME IS NULL :2012/04/18(水) 22:56:59.12 ID:Vs9VEYCJ
966 :
NAME IS NULL :2012/04/18(水) 23:16:23.31 ID:Kl6LHslJ
教えてください トランケイトを実行した場合 10G→LAST_DDL_TIME更新される 11G→LAST_DDL_TIME更新されない という認識はあっていますでしょうか?
11gもR1とR2で随分違うよな。(ohasdとか) OracleMaster試験ではその辺の問題がでないので受けるほうにしては楽だけど、 それでいいのかとも思う。
>>952-954 ありがとう
すべてダウソさせてもらった
CDKEYとか要らないんだね、すごい気前いい
一太郎全盛期の一太郎みたいだ
その気前のよさが本番運用時の保守代金に反映されているとお考え下さい。
/''⌒\ ,,..' -‐==''"フ / (n´・ω・)η 一般公開してるバージョンは致命的なバグも楽しめるかもだよ〜 ( ノ \ (_)_) ~"''"""゛"゛""''・、 "”゛""''""“”゛゛""''' "j' :::::ヘ :::::....ヽ :::;;;ノ ::( :: ゝ :::::......ノ:;;..:::::::ヽ
かも じゃねぇだろ(怒>>ボラクル!
>>952 comのDLは大昔からあったw
学習、開発に限り無償な。
>>969 >>一太郎全盛期の一太郎みたいだ
一太郎は、一説によると自由にコピーして使えたからあれだけ普及して売れ
るようになったと言う話がある。
当時、MS-DOSの時代だったので一太郎の実行ファイルなどをfloppy diskか
らfloppy diskにコピーすればそのまま使えた。
だからみんな一太郎を使い慣れて、次に自分でソフトウェアを買う時も一太
郎を買うようになる。
そんなことができるのは一太郎に限ったことじゃなかったと思う
一太郎が売れたのは日本の罫線文化に対応したからだろ
一般公開してないバージョンでも致(ry
>>975 どういう仕組みかは知らないが、当時のソフトウェアにはマスターの
floppy diskから別のfloppy diskにコピーしようとすると、コピーが途中で
止まってしまうものがあった。
DOSの時代は中国のことを笑えないくらい著作権無視な連中が多かったな ああ、今でも笑えないか
____ . / ― '' ー\ / ( ●) ( ●)\ DOSの時代は中国のことを笑えないくらい著作権無視な連中が多かったな / :::::⌒, ゝ⌒:::::\ | `ー=-' | \ ⊂、ヽ、_∩ / . , -‐ ´ \ '、 ヽ ! ` ー-、 / __ ヽ ー、 \ | ∧ . 〃 ,. --ミヽ ヽ \ ヽ |/ハ ji/  ̄` ` ヽ . {{ ' ____ . / ノ '' ⌒\ / ( ● ) (● )\ ああ、今でも笑えないか / :::::⌒, ゝ⌒:::::\ | `ー=-' | \ ⊂、ヽ、_∩ / . , -‐ ´ \ '、 ヽ ! ` ー-、 / __ ヽ ー、 \ | ∧ . 〃 ,. --ミヽ ヽ \ ヽ |/ハ ji/  ̄` ` ヽ . {{ '
ちょっと前まではオフィスとか職場でコピーしまくってたからな 今更コンプライアンスとかどの口が抜かすかと
スレチの多いスレだな
ああ、今更か
はい、
>>980 どうぞ
パケットキャプチャの次はAAか ずいぶん粘着してるな
パケットキャプチャすれば一発 はい論破
2行で済むから以後そちらの方向で
____ . / ― '' ー\ / ( ●) ( ●)\ パケットキャプチャすれば一発 / :::::⌒, ゝ⌒:::::\ | `ー=-' | \ ⊂、ヽ、_∩ / . , -‐ ´ \ '、 ヽ ! ` ー-、 / __ ヽ ー、 \ | ∧ . 〃 ,. --ミヽ ヽ \ ヽ |/ハ ji/  ̄` ` ヽ . {{ ' ____ . / ノ '' ⌒\ / ( ● ) (● )\ はい論破 / :::::⌒, ゝ⌒:::::\ | `ー=-' | \ ⊂、ヽ、_∩ / . , -‐ ´ \ '、 ヽ ! ` ー-、 / __ ヽ ー、 \ | ∧ . 〃 ,. --ミヽ ヽ \ ヽ |/ハ ji/  ̄` ` ヽ . {{ '
>>979 当時はソフトウェアの価格が高かったから、大企業でもどかからかコピーし
てきたソフトウェアを使っていた。
>>988 お前の会社がそうだったからと言って、他の企業を巻き込むなよな。
 ̄ ̄ ̄V ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ _____ /::::::::::::::::::::::::::\ _ /::::::::::::::::::::::::::::::::::::::\ /  ̄  ̄ \ |:::::::::::::::::|_|_|_|_| /、 ヽ また変なのが来た |;;;;;;;;;;ノ \,, ,,/ ヽ |・ |―-、 | |::( 6 ー─◎─◎ ) q -´ 二 ヽ | |ノ (∵∴ ( o o)∴) ノ_ ー | | /| < ∵ 3 ∵> \. ̄` | / ::::::\ ヽ ノ\ O===== | :::::::::::::\_____ノ:::::::::::\ /
>>989 私の行ってた所は小さな会社だったけど、取引先の大きな所もやっていたよ。
だからなに? 赤信号、みんなで(ry とでも言いたいのか? 俺だけ(うちの会社だけ)じゃないとでも言いたいのか? だとしたら基地外の坩堝だな。
次スレどこ?
さっさと埋めるでぇ
(」・ω・)」うー!(/・ω・)/にゃー!
(」・ω・)」うー!(/・ω・)/にゃー!
(」・ω・)」うー!(/・ω・)/にゃー!
(」・ω・)」うー!(/・ω・)/にゃー!
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。