1read 100read
2012年1月2期データベース11: Oracle 質問総合スレ7 (280) TOP カテ一覧 スレ一覧 2ch元 削除依頼
・ 次のスレ
12: Microsoft SQL Server 総合スレ 9 (255)
14: Firebird関連スレ3 (409)
16: オブジェクトデータベース LINQ, DLinq のスレ (151)
20: 【M言語】キャシエ・CACHE【MUMPS】 (257)

Oracle 質問総合スレ7


1 :12/01/09 〜 最終レス :12/01/26
◆前スレ
Oracle 質問総合スレ6
http://toro.2ch.net/test/read.cgi/db/1314941245/
◆過去スレ
Oracle 質問総合スレ5
http://hibari.2ch.net/test/read.cgi/db/1279635842/
Oracle 質問総合スレ4
http://pc11.2ch.net/test/read.cgi/db/1250995281/
Oracle 質問総合スレ3
http://pc11.2ch.net/test/read.cgi/db/1223384283
Oracle 質問総合スレ2
http://pc11.2ch.net/test/read.cgi/db/1194742799
Oracle 質問総合スレ
http://pc11.2ch.net/test/read.cgi/db/1163907455
◆公式サイト
OTN-J
ttp://www.oracle.com/technology/global/jp/index.html
OTN
ttp://www.oracle.com/technology/index.html
Install Center
ttp://www.oracle.com/technology/global/jp/tech/install/index.html
1. 質問する時はDBのバージョンとプラットフォームぐらいは書きましょう。
2. OTNからダウソ出来るものは、30日過ぎても別に機能的に制限が
かかるという訳ではありません。あくまで紳士協定に基づいて、
 削除してくださいという事です。

2 :
Oracleが2をゲット

3 :
安藤優子、木村太郎は、某プロパイダの社外取締役、かつ、安藤は、フジ社外の人間にもかかわらず、フジテレビジョンのM&Aの最中、フジのホワイトナ
イトの【親会社】の本業を無視して、「インターネットは虚業だ。具体性がない
。」というようなことをコメントしました。この虚業は、livedoorを指していた
としても、「同業者」であったということは、非常に、違和感を感じずには、い
られません。

4 :
";" と "/" ってどう違うの?

5 :
>>4
今後はマニュアルをお読みください。
SQL*Plusの場合
";"
・ 単一SQL文の終端
・ PL/SQLの構文終端
"/" (行先頭に"/"のみを書いた場合と仮定)
・ PL/SQLブロックの終端
・ RUNコマンドのalias

6 :
なんで引数なしのDelete でみんな消えるの?

7 :
普通 アスタリスクだろ
select の時はアスタリスクじゃねーか

8 :
と思ったらあれはカラムだった。

9 :
引数って何の話してんだ?

10 :
selectするとき*より必要な列を指定したほうが早いの?

11 :
>>10
早い遅いでいえば、変わらんでしょ。
*でも列指定でも内部的なアクセスブロック数は変わらないし。

12 :
前提条件が少なすぎるので答えはない
インデックスだとブロック数は変わるし

13 :
必要な列数が全列数より少ない場合、特定の条件下では速くなる

14 :
>>12
あー、確かに、インデックスアクセス時に、列指定すれば、テーブルにアクセスしなくていいようなケースだったら、列指定でアクセスブロック数少なくなるね。
ケースバイケースだな。

15 :
>>5
おお、ありがとうございます

16 :
出力可否でも速度は変わる
何の速度によるかだが

17 :
対象行が少ないなら、無視可能な範囲でしか変わらないでしょ

18 :
おいおい
お前ら、ネットワークリソースのことも考慮に入れろよw

19 :
アプリケーションからフェッチしてメモリ格納する際の速度も
視野に入れるとしたら、やっぱ列指定のほうが早いのでは?

20 :
設問の曖昧さも視野に入れようよ

21 :
サーバー上のバッチならネットワークは関係ない。

22 :
だがちょっと待って欲しい。
もしかしたら使っているのはExadataだったのかも知れない。

23 :
>>21
他のサーバ上のDBを参照している場合も考慮しろよな

24 :
2層のシステムなんてそうそうないだろ

25 :
今なんかLinux Serverとか安くなっているから、バッチ専用のサーバーとか
立てている所とかあるぞ。
あとはアプリケーションサーバー側からバッチ走らせていたりとかな。
ExadataだとComputeノードから処理をCellサーバー側にオフロード化させて、
Infiniバンド経由で結果セットを返したりとかだな。

26 :
APサーバーでバッチ処理って作りはやめてほしいわ

27 :
>>10のネタから広がりすぎだろ

28 :
NoSQL製品出す前に
ちゃんとスケールするRDBを作れよ

29 :
あ、はい。

30 :
ISAM時代に逆戻り

31 :
あーSHAZNAのボーカルね

32 :
>>31が暇人のツッコミを待っていますのでどなたかどうぞ

33 :
PL/SQLのDBMS_OUTPUT.PUT_LINEって
1行の長さ制限ってあります?
どうも512文字を超えるとエラーになるようにみえるんですが。
DBの内容を編集しつつ、テキストファイルに落としたいんだが、
最大で1行8000文字になるんですよね。
プログラムから呼び出して編集する方法を考えるしかないのかなぁ。

34 :
>>33
http://docs.oracle.com/cd/E16338_01/appdev.112/b56262/d_output.htm
・最大行サイズは32767バイトです。
・デフォルトのバッファ・サイズは20000バイトです。最小サイズは2000バイトで、最大サイズは無制限です。
バージョンによって違うかもしれない

35 :
>>34
Oracle10gか11gだけど、AIXで動いてるやつです。
substrで512文字以下に区切ると、うまく通るので、
やっぱり行の長さとしか考えられんす。

36 :
今更なんだけど、プロシージャ実行の途中でバッファの内容を出力する方法
ってあんの?いつも実行終了後にどばぁって出力されるんだけど。

37 :
>>33
素直にUTL_FILE使ったほうがいいと思うけど。
それか、sqlplusから出力させるか。

38 :
>>37
もともとTeratermで接続してsqlplusで出力させて、
テキストデータを回収する予定でした。
そのためのPUT_LINEです。
UTL_FILEはDBサーバ側にファイルが作られそうなので、
ちょっとまずそうです。
しょうがないので、Excel VBAか、perlの使用を検討中。

39 :
>>38
諦めるのも一つの選択だけど少なくともバージョンとsqlplusで
show serveroutput
の結果を晒すべきではないかと思う

40 :
スレ違いだったらすみません。
2月からデータベースになるのですが、難しいですか?
入社1年目でデータベースはORACLEで5台セットのようです。
コツなどあれば教えて欲しいです。宜しくお願いします。

41 :
人柱か・・・・

42 :
>>39
すみません、職場のPCの話なので詳細を報告するのは難しいです。
sqlplusは
set serveroutput on size 1000000
くらいで設定しています。(最大値)
その上で出ているエラーです。
アドバイスありがとうございました。

43 :
>>40
20年くらいひたすらデータベースのことだけ考えてたら、いつかデータベースになれる日がくるんじゃないか?

44 :
>>40
データベースになるのか・・・。
周りの人とはやっぱりSQLで会話する事になるのかな・・・?
10万行の結果とか返すの大変そう・・・。

45 :
>>40
まあ、真面目な話、DBAになるのならちゃんとトレーニング受けさせて貰え。
覚えることがかなりあるから、時間がかかるかも知れないがな。

46 :
>>42
例えば LINESIZE が 512 のとき SERVEROUT の FORMAT が TRUNCATED なら各行512文字で切り捨てられる

47 :
ORACLEで5台セットっていう表現がモヤっとする

48 :
すみません。質問なんですがoracle 11.2.0.2のLinux サーバーで2つ目のインスタンスを作成した後、DBにアクセスしたところora- 12547のエラーが出て、DBにアクセス出来ませんでした。
どなたか原因に心当たりありませんか?

49 :
>>40 のようなのもそうだけど、どこの会社もデータベースの設計や構築に力を入れてないのがよく解る。
インフラ技術者が多くても、
パフォーマンス遅い、データが溢れました、バックアップ取れてませんでした
ってのが多過ぎるよな。

50 :
>>48
1つ目のインスタンスへはアクセス出来たの?

51 :
>>50
はい、できてます。
2つ目のインスタンスにアクセスしようとするとエラーが出ている状況です。

52 :
>>51
ローカル接続?リスナー経由の接続?
初回ログインができない?それとも途中で接続がきれる?

53 :
>>52
リスナー接続になります。
sqlplus起動後の初回ログイン時にエラーが発生し、ログインできないじょうたいです。

54 :
>>49
恥を忍んで言いますが。
某小売(東1上場)の基幹システムのテーブル設計をやったの俺だけど、設計当時
パーティションの概念が全く無くて何も考えてなかった。さすがにINDEXの知識
はあったけど。
今、パーティション化されてないテーブルにレコードが4億件入ってて、もうど
うにも出来ない状態。ちなみにこのシステムはバックアップなんか取って無い。
テーブル事に日々差分を取らなくていいんすかね?て上位会社のSEに言ったら、
それが必要がどうかは設計者が個々に考えろって言われた・・・

55 :
>>54
とりあえずパーティショニングオプション買ってパーティション化すれば?
1.対象テーブルexp
2.テーブル削除
3.パーティション表作成
4.対象テーブルimp
性能の大幅改善という名目でリプレイスだな。

56 :
>>48
環境変数ORACLE_SIDを変えてないだけとか

57 :
>>48
O/Sのリソース不足。
メモリとか使いきってたりとかしてないか?

58 :
>>56
ORACLE_SIDはインスタンスごとに替えてました。
状況としてAインスタンスへのアクセスはoracleユーザ、Bインスタンスへのアクセスはxxxユーザと切り替えてアクセスしようとしています。
dbcaでのインスタンス作成時に2つのインスタンスともAユーザで実施しましたが、インスタンス作成時にもユーザを切り替える必要がありますでしょうか?

59 :
>>58
dbサーバローカルから、リスナー経由でアクセスしようとしているってこと?
oracleユーザの話なのか、osアカウントの話してるのか今一わからん。

60 :
>>58
対象インスタンスのリスナー起動してる?ポート番号重複は?

61 :
こういう質問の仕方する人って自分の使ってる環境を書かなくても
みんな知ってるって思い込んでるんじゃないかと思う

62 :
>>61
確かにね。
質問の仕方ってベンダサポート受ける時も重要。質問の内容でそのユーザのレベルが分かるから
ユーザのレベルが低いとサポート側もナメた対応してくるところ多い。

63 :
>>49
おまえ設計とか分かってるの?
一般的な運用設計項目あげてみ?(大見出しだけでいいから

64 :
と言う感じで誘導して答えを引き出そうとしている訳ですねわかります

65 :
>>55
いや、パーティションのオプションは最初から入ってた。
単に俺(というかうちのメンバ全員)が「パーティション?それ美味しいの?」
てレベルだっただけ。2次開発以降に設計したテーブルは極力パーティション化
してるよ。
ちなみに24時間オンラインからも参照してるんで負荷かけられないし、dumpは
恐らく100GB程度になるだろうし、対象テーブル丸ごとexpとか無理ですから。
3年で4億だから、あと4年放置したらどうなるかもう考えたくない。(しかも
店舗数は今後も増える予定だし)
多分リプレースまでこのまま放置だと思うけど、リプレース時のデータ移行で
また死ぬと思うわ。

66 :
環境情報が不足しており申し訳ありません。
ユーザは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インスタンスへはアクセスできておりました。

67 :
OSユーザでOracleにアクセス?

68 :
>>66
OS上でsqlplus使ってoracleユーザだと両インスタンスへ接続が可能ということ?
で別のOSユーザでBインスタンスへsqlplusで繋ごうとして接続できないとういうこと?

69 :
>>66
ついでに、tnsnames.oraもさらしてみようか。
あと、sqlplusで接続するときの引数もね。

70 :
>>65
よくパフォーマンス維持できてるな
クレームの嵐になる前に上司にはアラート上げておいた方がいいぞ。
(自分の身を守るためにも)
しかしバックアップ取ってないとか考えられない・・・
というかやばい、やばすぎる。
おれがエンドユーザだったら構築・運用ベンダ即刻切るレベル。

71 :
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ユーザのパスワード を入力しております。
認識に相違ありましたら申し訳ありません。

72 :
>>70
DB丸ごとのbackupは取ってる、と聞いた気がする。TBL単位で日々は取って無い。
それを取るのは運用の仕事ではないらしい。
過去に一度、バグで誤った削除をしてしまった事があるけど、TBLのバックアップが
無いので元に戻せなくて、大問題になった事がある。
パフォーマンス?
Web画面からデータ検索したら返ってくるまでに10分以上かかりますが何か?
よく客がキレないよな。不思議だ。

73 :
>>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 :
>>72
>>それを取るのは運用の仕事ではないらしい。
客との契約の問題なんだろうか。テーブル単位はアプリ側で取っておくとか。
通常パフォーマンス面でもアプリケーション毎にレスポンスxx秒以内とか契約してるもんだがな・・・
メンテさせてもらいたいわ。いい小遣い稼ぎになりそう。
10分→10秒とかに改善したら客も喜ぶだろうに。

75 :
>>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 :
>>75
じゃあ
./lsnrctl services
./lsnrctl status listener
の結果は?

77 :
>>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 :
以下、続きになります。
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 :
ちなみに
>xxxユーザで
>1.
>export ORACLE_SID=instanse2
>
>2.
>sqlplus "/ as sysdba"@INSTANSE2
>
上記をoracleユーザで実行すると接続できてるんだよね?
oracleユーザとxxユーザでの以下実行結果は?
id

80 :
Instance 2のalert.logにORA-600とか7445とか出ていないか?
2つのインスタンスのmemory_targetの値がO/Sのメモリーを食いつぶしていたりとか
していないか?
試しにインスタンス1落として、インスタンス2だけ起動してつなげてみ?
それで繋がるのならO/Sのリソース不足だ。
もしかしたらSwapspaceをマウントし忘れていたりとかかもな。

81 :
>>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
$
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

82 :
>>81
取り敢えず、selinux無効にしてみたら、状況かわらないかな?

83 :
ulimit -aの値は?

84 :
oracleユーザとxxxユーザ で、TNS_ADMIN とかいう環境変数に
違いがあったりしないか?

85 :
xxxユーザにtnsnames.oraを読むためのread権限がないとか。

86 :
oracleユーザはdbaグループに所属してるから、
実はリスナー経由じゃなく、ローカル接続で両インスタンスに接続できていた
とかいうことはないのかな?
(つまり、oracleユーザであってもリスナー経由だと接続できないとか)

87 :
>>71
ほんとにこのままの手順でやって同じエラーでてるなら、ローカル接続してるから、リスナー系のファイル設定は関係ないと思われる。

88 :
まさかとは思うが、xxxユーザにORACLE_HOME環境変数が設定されてないという
オチはないよな?

89 :
>>88
ORACLE_HOME設定されてなかったら、違うエラーになると思う。
自宅の環境で試してみたけど、同じような設定しても普通に接続できるから、OS周りの設定がおかしい気がする。
ちなみにスタックサイズ制限を意図的に小さくしたら同じエラーでた。11.2.0.1だけど。

90 :
>>各位
皆様、すみません。以下、確認結果になります。
@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の続き
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
※お見苦しくて、申し訳ありません。

92 :
Swap領域とメモリーも知りたい。
freeの結果も見せてみ。
それと各インスタンスのmemory_targetの値。
あとインスタンス1を落として、インスタンス2だけを上げた状態で
接続出来るかどうかの確認もな。

93 :
ls -l $ORACLE_HOME/bin/oracleの結果ちょうだい。
$ORACLE_HOMEの下の権限を変にいじると、こいつのsuidとsgidはずれる
ことがある。
今suidとsgidはずしてみたが、同じ現象になった。

94 :
>>各位
皆様、ご指摘いただき有難うございます。
以下確認結果になります。
@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 :
Cが原因だな。
chmod 6751 $ORACLE_HOME/bin/oracle
した後、oracle再起動してごらん。
てか、ファイルも含めて全部775してるのかね。。
インストールしなおして必要な個所だけにパーミッション
ふり直したほうがいいかもね。。

96 :
おかげで無事解決できました。
Thanks for ALL!!

97 :
すみません。>>96の方に先にお礼書いていただいておりますが、
改めて皆様に現状ご報告させていただきます。
まず本問題はやはり>>95の方にご指摘いただきました権限の問題にありました。
ご指摘いただきました以下のコマンドを実行することで
xxxユーザでinstanse2にアクセスすることができました。
 chmod 6751 $ORACLE_HOME/bin/oracle
お恥ずかしい話ですがsuidとsgidの概念を存じておらず
ゆうに1週間以上かかって悩んでおりました。
また本日は貴重な休日のお時間を割いてご対応いただき、
皆様有難うございました。
私もこの板含め困った人がいた場合に、今日の恩義を忘れず
手助けしていく所存です。

98 :
Oracleのインストーラが未熟だということを知らない人結構居るから仕方ない

99 :
某パッチをあてたら、あるパーミッション関連がおかしくなるという
バグもあったりしたしな。

100read 1read
1read 100read
TOP カテ一覧 スレ一覧 2ch元 削除依頼
・ 次のスレ
12: Microsoft SQL Server 総合スレ 9 (255)
14: Firebird関連スレ3 (409)
16: オブジェクトデータベース LINQ, DLinq のスレ (151)
20: 【M言語】キャシエ・CACHE【MUMPS】 (257)