いつもお世話になります。
oracleのシーケンスの欠番を確認したいのですが、以下のようにサービス、インスタンスの再起動を試してみたのですが欠番はおきませんでした。
・サービスの再起動
コントロールパネルから、サービスを開いて、「OracleServiceXE」、「OracleXETNSListener」の再起動。
シーケンスをselectした結果、欠番確認できず。
・インスタンスの再起動
コマンドプロンプトを起動し、sqlplusから、sysdbaでoracleに接続。
shutdown、startupコマンドを行い、インスタンスを再起動。
シーケンスをselectした結果、欠番確認できず。
インスタンスの再起動を行えば欠番がおきる、というのをサイトで見たのですが、欠番は起きませんでした。なぜ起きないのでしょうか。
何か手順に不備があるのでしょうか。
alter system文による欠番は確認しています。
しかし、意図的にこのコマンドを発行しなければよいので、確認したいのは、通常運用時、データベースが起因してシーケンスの欠番が発生してしまう、ということです。
再起動などは普通に行うと思うので、その際に欠番が発生することを確認したいのです。
宜しくお願いします。
oracle:Oracle Database 11g Express Edition Release 11.2.0.2.0
OS:Windows Vista Home Promium 64bit
No.2ベストアンサー
- 回答日時:
こんにちわ。
> 元々キャッシュに関してはデフォルトのまま(20)で試してますが、欠番は確認できていません。
> 以前のoracleのバージョンだと欠番されていたが、11gだと起きないものなのでしょうか?
Sequence から採番した時に、SGA (Shared Pool) にCache されるので、
事前に「select seq1.nextval from dual;」とか行って、アクセスしておかないと
Cache されません。
11g (11.2.0.3) で最近確認しましたが、Shared Pool をFlush しただけで普通に
欠番が発生していました。
書き忘れましたが、RAC 環境だったりすると、1Node を再起動しても、もう1Node が
情報を持ってたりするらしく、欠番は発生しませんでした。
No.1
- 回答日時:
こんにちわ。
> なぜ起きないのでしょうか。
Sequence がCache されていないのだと思います。
Default では、Cache されるので
SQL> Create sequence seq1;
SQL> select seq1.nextval from dual;
としてから、インスタンスを再起動してみて下さい。
返答ありがとうございます。
元々キャッシュに関してはデフォルトのまま(20)で試してますが、欠番は確認できていません。
以前のoracleのバージョンだと欠番されていたが、11gだと起きないものなのでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Java jdk17.06のインストーラーが起動しない 1 2023/03/27 21:58
- UNIX・Linux いつの間にか自宅サーバーが見れなくなっていた時のトラブルシューティング手順をご教示ください 4 2023/02/15 21:01
- UNIX・Linux Linuxのパッケージ更新で更新前に再起動が必要か確認する方法を教えてください。 needs-res 2 2022/03/24 20:30
- デスクトップパソコン windows7を使っているパソコンでの質問です。先日動作が遅く再起動かけると「windowsを起動 9 2022/06/16 21:31
- Excel(エクセル) Excel2010 VBAが特定動作で実行出来なくなる 7 2022/12/29 14:26
- ビデオカード・サウンドカード PCに接続したイヤフォンのマイクが使えません。 3 2022/10/22 11:07
- UNIX・Linux cronの@rebootでのdateコマンドの実行につきまして 2 2023/06/11 16:23
- Oracle 質問です。 下記のテーブルとデータがあり、 取得想定結果のように出力したいです。 下記のsqlだと0 2 2023/05/23 19:10
- ブルーレイ・プレーヤー・レコーダー HDDの異常 9 2022/11/08 23:55
- Windows Vista・XP windows xp proが起動しなくなりました 10 2022/05/20 00:49
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
SELECT文の結果をDEFINEの値と...
-
selectの単純繰り返し
-
【SQL】他テーブルに含まれる値...
-
SELECT INTOで一度に複数の変数...
-
フラグをたてるってどういうこ...
-
sqlに記述できない文字
-
SQLで、Join句で結合したテ...
-
PRIMARY KEYのコピー
-
DB2のSQLコマンドについて
-
Access 別のDBに対してDlookup...
-
timestampのデータはどのように...
-
PostgreSQLのtimestamp型で時間...
-
データ削除とSQL*Loaderでのイ...
-
T-SQLで任意の箇所で強制終了す...
-
結合したテーブルをSUMしたい
-
UPDATEで既存のレコードに文字...
-
Accessで最新のレコード...
-
JDBCを使ってdate型へのINSERT...
-
オラクルのUPDATEで複数テーブル
-
エラーを起こす方法
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
selectの単純繰り返し
-
SELECT文の結果をDEFINEの値と...
-
SQL Server:UNIONで結合した結...
-
RANK関数で順位付けする方法
-
ストアドプロシージャが作成さ...
-
PL/SQLの初歩的な質問その2
-
SQL WHERE文のノットイコール...
-
SQLを完全にマスターする方法は...
-
SQLのIF文
-
oracle シーケンスの欠番を確認...
-
SELECT文発行後の結果をテキス...
-
【SQL】他テーブルに含まれる値...
-
SELECT INTOで一度に複数の変数...
-
フラグをたてるってどういうこ...
-
sqlに記述できない文字
-
Accessで今日から5日後
-
UPDATEで既存のレコードに文字...
-
truncate tableを使って複数の...
-
timestampのデータはどのように...
-
オラクルのUPDATEで複数テーブル
おすすめ情報