Oracle 質問総合スレ13 [無断転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
>>450
なんでヒアドキュメントで書かないのか? >>453
なんでそれがおかしいと思うのか?
ちゃんとOracle Databaseのマニュアルに書いてある。
Linuxのようにユーザーの切り替えではなく、いまのユーザーの切断、別のユーザーでの接続なので、おかしいことではない。 >>454>>456
勉強になりました。
ありがとうございます。 >>455
イメージが違ってるかもしれないがヒアドキュメントを使用すると
ループでsqlplusを何回も起動することにならない?
この書き方は定石だと思うよ。()の部分は関数化するけど。 >>453
sqlplus /nologは単にsqlpluブロンプトを起動するだけだからわざと間違ったパスワードやユーザー名を渡さない限り
エラーになる事の方がおかしいだろ。 >>459
なに頓珍漢なこと言ってるんだよ
しかも既に解決してるし >>458
あなたがSQL*Plusの使い方に慣れていないだけで、あの例を見直してもいちいちシェルスクリプトでループする理由が見当たらない。 PL/SQLを存在意義を無視したやり方には疑問しかない。 オラクルコンサルの本で記載のあったテクニックだから
悪手とは思わないな どうでもいいことに優劣をつけたがる思考に疑問しかない 自分もヒアドキュメントの方がピンとくるけどこの方法も目から鱗だと思ったな
可読性には欠けるけど よくわからないのがなぜシェルスクリプトでループしないのかだ。
少なくともプログラマの発想ではない。 インフラ屋がテストの時に使いたいコードだからだよ。業務を動かすための処理ではない。 すみません、教えてください。
制御ファイルのシーケンス値が3分に1つ
定期的に増えているようです。
アプリは一切動いていない無風状態でもです。
チェックポイントが自動的に発生しているのかと
思い、FAST_START_MTTR_TARGETという
パラメータ値を確認しましたが、0でした。
なお、OSに入れているミドルウェアでは
定期的に制御ファイルのシーケンス値を増やすような
仕様はないようです。
他のパラメータなど考えられる原因は
ありますか? v$database.controlfile_sequence?
これは制御ファイルになにかしらかすると増える奴なので、
チェックポイントに限らず制御ファイルに格納されるもの
依存だから気にするだけ無駄でしょ >>469
RACだったらコントロールファイルに3秒起きに全ノードのインスタンスがハートビートで
書き込んでいるから必ず増えて行くぞ。 Oracleはインストールも設定も複雑で難しくライセンス周りも面倒で扱いにくい印象がありますがなぜOracleを採用する企業が圧倒的に多いのでしょうか
学習のためにSQL ServerやPostgreSQLを使ってみましたが全くストレスなくインストールできました
SQLの機能数も十分ですし、クエリパフォーマンスも特に差があるようには思えませんでした
これがあるからOracleが良いんだと言えるようなメリットがあるのでしょうか インストールの難しさだけでデータベース選ばないでしょう
そこが難しいなら専門の人達に任せればいいし、大量データの取り扱いになるとOracleの方がクエリパフォーマンスもチューニング・アドバイザもありますしね
軽量データでチューニングも難しくないのならOracleである必要はないです 昔はoracleばかりだったけど最近は中小企業の
案件はほとんどPostgreSQLになってる
うちの会社の実績だと。いくらなんでも
高すぎて導入できない企業続出 >>472
Oracle技術者が圧倒的に多いから。 >>472
インストールが難しいからこそ大規模な更新トランザクションに耐えうるってことでしょ。
クエリパフォーマンスも特に差があるようには思えませんと思うならそれは何tpsの要件のシステムとして評価したの? インストールの難易度とトランザクション数は関係ないと思うが
ストアドの成熟度は一番だし過去資産が大量にある場合は
大抵移行コスト出せないから選ばざるを得ない。
今から新規ならPosgreSQLでいいかな。
MySQLは変なトラップが多い印象
サーバがWindowsならSQL Serverが第一候補だが
LinuxだとSQL Serverは出たばっかで未知数だしDB2はクソ
商用DBMSは意外に選択肢がない 昔のSQL Serverはロックが
エスカレートしたりで
AP側の作りに手がかかったり
細かいところで実運用に
手間が必要だったけど
最近のは良くなってるのか >>478
その辺りはかなり良くなっている。
ライセンスも本番機のみでテスト・開発環境はフリーで使わせたりしているから、
鯖が窓系ならOracleにする必要なんて無いだろうねぇ。 良くなってるんだな
MSのサポートとかどうなん?
最近はコア数が多いから
ライセンス料金がはね上がって
大企業でもEEに苦しんでるけど
サポートの手厚さにやっぱ
Oracleだなって話にはなるのだけどww >>480
> サポートの手厚さにやっぱ
> Oracleだなって話にはなるのだけどww
お前Oracleのサポート使ったことないだろ... >>481
彼もおまえもマイクロソフトのサポートのひどさを知らない。 >>482
お前MSのサポートも使ったことないだろ w >>480
MSのサポートははっきり言って役に立たない。
ググった方が明確な答えが見つかる事の方が多かったりする。
Oracleも最近だと初期対応がインドの使えないエンジニアに割り当てられることが
多くって、一般的な質問なのに通り一遍等の「○○のファイルをまず寄越せ」とかって
いうのが多い。
最近だとCPUの脆弱性「Spectre(スペクター)」と「Meltdown(メルトダウン)」に関して
問い合わせたら「CPUの質問に関してはまず診断ファイルを上げてください」とかって
言われて、こっちもぶち切れて「通り一遍等の返答じゃなく、質問をまず読め。何で
この質問でそんな診断ファイルを取る必要があるのか考えろよ」と文句言ったらようやっと
専門のセキュリティチームにSRが割り当てられた。 >>484
> ググった方が明確な答えが見つかる事の方が多かったりする。
そんなレベルの低い問い合わせの時点でサポート契約してないことがバレバレやん w サポート契約が代理店経由かベンダとの直接契約かで、大きく変わるからな。一括りに話しても話噛み合わんがな。 日本マイクロソフトのサポートに去年いたけどひどいものだった。
プロの問い合わせについてはほぼお手上げ。
それでもネットで調べればすぐわかるようなことを大金を払って聞いてくるユーザーが多いから成り立っている。 サポートっていうても問診みたいなものでしょ
多くの環境情報と精密検査する権限を持ってる自社エンジニアより正確な診断できるものなのかな どうもマイクロソフト関係者があせって反論しているようだ プレミアだから別みたいなのも日本マイクロソフトのサポート内でも別と言っているが、ようは時間をかけるかどうかの違いしかない。 アップルもそうだが日本マイクロソフトはただの営業代理店だからな
込み入った話は全部本国に問い合わせ
Oracleは不具合公開が有償なのがMSに劣ると思う データベースサーバ:
oracle11g R2 64bit
linux 2.6
db_block_sizeは8192バイト
NLS_CHARACTERSETはAL32UTF8
クライアント:
oracle11g R2
Widows7 32bit
何かソフトをインストールするには事前に許可が必要です
CLOB型のカラムをクライアントのローカルのハードディスクにCSVで出力したいです
休日も出力するのでバッチかWSHでタスクスケジューラーで自動実行が望ましいです
SQLPLUSでspoolでは1行32767バイトを超えられないので無理です
PL/SQLのDBMS_OUTPUTも1行32767バイトを超えられないので無理です
jscriptでODBC経由で接続して出力しようとしたところORA-01489エラーで失敗しました
shift the oracleにあるのはサーバに出力するので使えません
何か方法がありますでしょうか
さっき確認したところ最大で約127700文字ありましたが明日はもっと長くなるかもしれません >>495
サーバ側でUTL_FILEかCGIプログラムでCLOB⇒CSVへエクスポートする。
それをFTPやHTTPSでWindowsクライアントが取得しては?
Oracle RDBMS 11.2にはOracle HTTP Serverや 埋込みPL/SQLゲートウェイ
が付いてるのでそれでFTP、HTTP等でクライアントからリクエストを受け、
PL/SQLストアドプログラムなりCGIゲートウェイで CSVを作って送り返せる。 >>496
ご回答ありがとうございます
サーバは他社のものなのでタダではサーバにファイルを出力できません、サーバの設定もいじれません
予算ないです... dbms_lob,substrで分割して取得して
出力時に結合してORA-01489を回避とか >>498
ご回答ありがとうございます
やっぱり一旦複数行に分割して出力して後で結合するしかないですか 後出しで色々と条件を付けるよりも、いま
使えるモノ、使えないモノを書いた方がいいと思う。
sqlplus.exe しかないとか、ADOとOLEDB or ODBCが使えるとか、
OCIライブラリに何かのプログラミング言語が使えるとか。 失礼しました
使えるもの
sqlplus,wsh,odbc,VBA,access,excelほか
windows7Professional32bitに標準でついているもの、oracle11gのクライアント、microsoftのoffice365proplus
使えないもの
上記以外全部,javaも不可
データベースにある権限
対象テーブルのselect
CREATE DIRECTORY権限なし
ディレクトリ読み込み書き込み権限どちらもなし
UTL_FILEの実行権限なし
データベースサーバのOSへのログイン不可
休日も出力するので対話式不可 11gR2のRMANバックアップを12cR1の環境にリストアすることはできますか?
data pumpではなくどうにかバックアップからバージョン跨ぎのリストアを行う必要がありまして。。 出来るよ。
duplicateコマンドをnoopenオプション使ってクローニングして、リストア完了後にupgradeする。 WinSrv2012R2の12cR2の環境で、dbhome_1\databaseの下に「_minidump_sid_pid_8292_tid_x1EC8_2018_7_6_10_10_10.dmp」
といったファイルが出力されているんですが、これはなんのダンプなんでしょうか?
タイムスタンプの時間帯にはORA-447でexpdpが失敗している、
かつOracleに割り当てメモリサイズとほぼ同じサイズのため、このエラーに関連するメモリダンプなのでは
ないかと思いネットで調べていましたが、全然情報にたどり着けません…
ファイルサイズが33GBもあるため削除または退避させたいのですが、問題ないでしょうか? minidumpでてるならwindowsのイベントログに
何か書いてないかい >>509
Windowsのイベントログには何も出ていませんでした…
他にもOracleのallertログ等には何も出ていませんでした。 >>508
プロセスのメモリダンプなんてSRでアップしろって言われない限り(゚听)イラネ
さっさと消しちまえ。 開発マシンにdmpファイルを持ってきて、Visualstudioで開いてみたところ、ミニダンプファイルの概要が表示され、プロセス名がoracle.exeになっていました。
やはりWindowsの機能で出力されたミニダンプで間違い無いようです。
Oracleの何かのプロセスがORA-447発生時にWinのコマンドを実行しているというのが濃厚でしょうか… システムプロセスがクラッシュしたからコア吐いているんだろ。
pmonとか致命的なプロセスじゃなきゃmmonが勝手に再起動してくれんよ。 その系統なら素直にサポートへ問い合わせした方がいいと思うよ >>512
日本人だから気になるだけで、世界基準では、使ううえで特に支障がなければ気にしない。
いちいちそんなことを気にしていたら何にもできないぞ。 windowsでminidumpがでてるのって
大抵oracle.exeがaccess violationもらって
インスタンスごと落ちてる場合だと思ってたけど
その場合ならイベントログに何かでてるだろうし
まあサポートに問い合わせるか気にせず消すかお好きな方で >>478
ロックエスカレーションの仕様はあまり変わっていない。
ただし、ロックエスカレーションをテーブル単位に無効化できる。
でも下手に無効化すると、数百万件とか大量レコードを更新した際に、メモリ枯渇に陥ってしばらく応答しなくなったりする。
ロックが大味でメモリの使い方が下手くそなのはSQLSERVERの宿命 exp、impがサポートされなくなったようですが、
サポートされないというのは具体的にどういう意味でしょうか?
使えないわけではないようなので、
何かあっても自己責任というニュアンスでしょうか? >>520
文脈によって意味が変わると思うが、「使うべきでない」と理解するのが妥当かと。 >>520
何か問題が起きてもオラクル社のサポートはないということ。 >>520
例えば一部のLOB型とか従来型exp/impではサポートされないし、正常動作もしない。
そんなの使って日々のバックアップ取っていて、いざ戻せないという自体になっても
当然自己責任という事。 実行計画を知るために、これ迄、SQL*Plus から explain plan for や set autotrace を投入する
やり方を 9i (9.2) 以降、何10年も続けて来たんだが、先日、10g (10.2) で明らかな「誤り」に気づいて
調べた結果、必ずしも正しい実行計画が得られないことが分かった。具体的にはバインド変数を含む
SQLや、mv による query rewrite を行うケース。
代案として dbms_xplan.display_cursor テーブル関数を用いて SQLカーソルから得る方法が
しばちょう先生の記事に載ってた。マニュアルにもあるが、こういう情報を出してくれるのはありがたい。 >>524
宣伝?
マニュアルに書いてない、マニュアルが間違っているのは日常茶飯事。 そういえば、HCC圧縮されたテーブルをUPDATEするとデータブロックが破壊されるバグってもう治ったんですかね? >>526
とっくに対応済みだな。
それにしてもHCC圧縮って、JIS規格みたいに二重表現だよな。 SCSIインターフェース、HTTPプロトコル、HDDドライブ、… ある日突然無茶なHASH結合の実行プラン立てて、一時表領域32GB使い切って死亡するアホなオプティマイザさんは健在ですか? >>531
どういうこと?統計情報固定化ってこと? 修正された新しいバージョンがリリース済みという意味だと受け取ったが、他の可能性もあるなら自分も知りたい 開発環境で検証もされていない実行計画を自動で作り出して本番で走らせてるのは危険ってことでしょ。
完走できないかもしれないが速いF1。
速さはそこそこだけど安定して走るクラウン。
どっちを取りますか? というか取り得る実行計画すべてを事前検証なんてできるのかね >>534
開発環境で検証して上手くいっても、本番でダメなパターンなら良くある。 >>539
問題の根本は製品の不具合なのに、スキル不足で使いこなせない方が悪いと思い込むよう洗脳されてますね。
ベンダー資格とか、製品が悪くないと思い込ませる洗脳が目的だと思う。 製品不具合だとしても公表できないからなあ
これって何かの法律違反にならないのか? >>540
問題の根本は動作検証にならん環境でテストの真似事をして製品不具合のせいにしとるおまえのアタマやで 今度出るバージョンはAIを組み込んだ19Aってこと? >>542
ヒント無しでは、明らかに正しいSQLの結果が返ってこないのが製品の不具合以外の何だというのかね?
洗脳されすぎ。 >>544
結果不正と性能劣化をごっちゃにして話すなや >>545
だれも結果不正(間違った結果を返す正常終了)の事なんて言ってない。
数時間レベルの性能劣化や、性能劣化の原因であるリソースの異常使用によるクエリのクラッシュの話をしてるんだよ。 >>546
つまり、来年1月までは少なくとも、頭の悪いオプティマイザのままってことだな。
まあ、ご自慢のAIも5年くらいはバグでまともに動かないからオフにするしかないんだろうけど。 >>547
>>547
なんだよ、クエリのクラッシュって。セッションの異常終了といいたいの?
遅いことを、正しいSQLの結果を返さない、と表現しないだろ >>549
「正しい」はSQLの修飾子です。
たしかに先入観持って読むと勘違いするな。 ちなみに11.2.0.4で関数インデックス使って、結果不正起きた事ある。
禁じ手なんだろうね。二度と使わねー。 >>551
いい加減自分のアタマが悪い愚痴をこのスレに吐き出すのやめろやw
愚痴なら嫁にでも言っとけよw >>552
少なくともORACLEのオプテマィザより賢い自信はある。 >>553
どっからくんねんその根拠のない自信はw
ホンマにアホやなw ■ このスレッドは過去ログ倉庫に格納されています