因host命令导致无法正常SHUTDOWN的实验
SHUTDOWN有几个参数可以使用: SHUTDOWN NORMAL :NORMAL也是默认的子句,执行的条件是 No new connections are allowed after the statement is issued. Before the database is shut down, the database waits for all currently connectedusers to discon
SHUTDOWN有几个参数可以使用:
SHUTDOWN NORMAL:NORMAL也是默认的子句,执行的条件是
No new connections are allowed after the statement is issued.
Before the database is shut down, the database waits for all currently connected users to disconnect from the database.
下次启动时不需要任何实例恢复过程。
SHUTDOWN IMMEDIATE:执行的场景是
To initiate an automated and unattended backup.
When a power shutdown is going to occur soon.
When the database or one of its applications is functioning irregularly and you cannot contact users to ask them to log off or they are unable to log off.
执行的条件是
No new connections are allowed, nor are new transactions allowed to be started, after the statement is issued.
Any uncommitted transactions are rolled back. (If long uncommitted transactions exist, this method of shutdown might not complete quickly, despite its name.)
Oracle Database does not wait for users currently connected to the database to disconnect. The database implicitly rolls back active transactions and disconnects all connected users.
同样地,下次启动时不需要任何实例恢复过程。
SHUTDOWN TRANSACTIONAL:执行的场景是需要进行例行的实例停止,但首先允许所有活动的交易完成,执行的条件是
No new connections are allowed, nor are new transactions allowed to be started, after the statement is issued.
After all transactions have completed, any client still connected to the instance is disconnected.
At this point, the instance shuts down just as it would when a SHUTDOWN IMMEDIATE statement is submitted.
下次启动时不需要任何实例恢复过程。
这种关闭操作不会让客户端丢失任务,同时不要求所有用户退出。
SHUTDOWN ABORT:执行的场景是
You need to shut down the database instantaneously (for example, if you know a power shutdown is going to occur in one minute).
You experience problems when starting a database instance.
执行的条件是
No new connections are allowed, nor are new transactions allowed to be started,
after the statement is issued.
Current client SQL statements being processed by Oracle Database are immediately terminated.
Uncommitted transactions are not rolled back.
Oracle Database does not wait for users currently connected to the database to disconnect. The database implicitly disconnects all connected users.
下次启动时将需要实例恢复过程。
可以看出ABORT是一种暴力的关闭,不会隐式地回滚交易,由于仍存在脏块,所以下次启动时需要进行实例恢复。
实验:
1. 执行shutdown normal命令关闭数据库
SQL> shutdown normal
发现提示SHUTDOWN: waiting for logins to complete喎?http://www.2cto.com/kf/ware/vc/" target="_blank" class="keylink">vc3Ryb25nPi48L3A+CjxwPrTTyc/D5rXEvenJ3L+0o6zKudPDc2h1dGRvd24gbm9ybWFstcS3vcq9udix1cr9vt2/4qOssrvUytDt0MLBrL3TvdPI66OszazKsdDo0qrL+dPQ0tHBrL3TtcS/zbuntsu2z7+quvOjrLLFxNy8zND41f2zo7nYsdWho7uz0sm0y7Smv8nE3LTm1NrI1M60ts+/qrXEway906GjPC9wPgo8cD7KudPDa2lsbCAtOSA3MjU1yNSyu8bw1/fTw6GjPGJyPgo8L3A+Cgo8cD48c3Ryb25nPjIuINa00NBzaHV0ZG93biBpbW1lZGlhdGXD/MHuudix1cr9vt2/4jwvc3Ryb25nPjxicj4KPC9wPgo8cD7T2srH1rG900NUUkwmIzQzO0PW0LbPc2h1dGRvd24gbm9ybWFso6zIu7rzyrnTw3NodXRkb3duCiBpbW1lZGlhdGXD/MHuudix1cr9vt2/4jwvcD4KPHA+U1FMJmd0OwpzaHV0ZG93biBpbW1lZGlhdGU8L3A+CjxwPjxpbWcgc3JjPQ=="http://www.2cto.com/uploadfile/Collfiles/20141113/201411130916122.png" alt="\">
此时提示SHUTDOWN: Active processes prevent shutdown operation
MOS上有篇文章(416658.1)专门介绍了immediate出现这种报错的问题,给出的原因是:
“If
the DB Control repository is running on the database target against which shutdown immediate was attempted then an incorrect order of events seems used.
You should stop DB Control first to get rid of all connections between DB Control and the repository database and then shutdown the database with "shutdown immediate'.”
意思是说可能DB Control库正在执行一些事件,需要停止DB Control避免所有DB Control和库之间的连接,然后才能执行shutdown immediate关闭,但这里我没有这样可能的操作,应该是没有普通用户未执行exit的场景,想一想,原来之前使用SYS登录后用过host切换到OS下,但并未切回退出,因此可能由于这样的问题,导致shutdown immediate出现hang的情况。
3. 执行shutdown abort命令关闭数据库
按照MOS的说法,使用
SQL>
shutdown abort 直接关闭
SQL>
startup restrict 允许具有restrict session权限的用户才能登陆,换句话,避免用户再登陆导致无法正常关闭
SQL>
shutdown normal 执行normal正常关闭
此时一切都安静了。
总结:
1. 非到万不得已尽量不要使用ABORT,谁知道会出现什么诡异的事情。
2.
执行关闭前,建议断开所有使用SYS连接的会话,特别是使用host切换OS的连接,可能会不注意,这点是教训。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









最近、多くの Win11 ユーザーが、シャットダウン時に、taskhostwindow タスク ホストがシャットダウン タスクを実行しているというメッセージが表示されると報告しています。ユーザーは、ローカル レジストリ エディターの下のデスクトップ フォルダーに入り、右側のウィンドウで AutoEndTasks を選択して設定できます。このサイトは、シャットダウン時にこの問題の解決策をユーザーに丁寧に紹介します。 Windows 11 のシャットダウンでは、taskhostwindow タスク ホストがシャットダウン タスクを実行していることを示すメッセージが表示されます。 解決策 1. 次の図に示すように、win キー + r キーの組み合わせを使用し、「regedit」と入力して Enter キーを押します。 2. [HKEY]を検索します

sudo コマンドを使用すると、ユーザーはスーパーユーザー モードに切り替えることなく、昇格された特権モードでコマンドを実行できます。この記事では、Windows システムで sudo コマンドに似た機能をシミュレートする方法を紹介します。修道コマンドとは何ですか? Sudo (「スーパーユーザー do」の略) は、Linux や MacOS などの Unix ベースのオペレーティング システムのユーザーが、通常は管理者が持つ昇格した権限でコマンドを実行できるようにするコマンド ライン ツールです。 Windows 11/10 での SUDO コマンドの実行 ただし、最新の Windows 11 Insider Preview バージョンのリリースにより、Windows ユーザーはこの機能を体験できるようになりました。この新機能により、ユーザーは次のことが可能になります。

この記事では、Win11 システムでコマンド プロンプト (CommandPrompt) を使用してネットワーク アダプターの物理アドレス (MAC アドレス) を確認する方法を読者に紹介します。 MAC アドレスは、ネットワーク通信において重要な役割を果たすネットワーク インターフェイス カード (NIC) の一意の識別子です。コマンド プロンプトを介して、ユーザーは現在のコンピュータ上のすべてのネットワーク アダプタの MAC アドレス情報を簡単に取得できます。これは、ネットワークのトラブルシューティング、ネットワーク設定の構成、その他のタスクに非常に役立ちます。方法 1: 「コマンド プロンプト」を使用する 1. [Win+X] キーの組み合わせを押すか、タスク バーの [Windows ロゴ] を [右クリック] して、表示されるメニュー項目で [ファイル名を指定して実行] を選択します。ウィンドウを実行し、[cmd]コマンドを入力して、

Win11 システムでは、コマンドを使用して Hyper-V 拡張セッション モードを有効または無効にできます。この記事では、コマンドを使用して操作する方法を紹介し、ユーザーがシステム内の Hyper-V 機能をより適切に管理および制御できるようにします。 Hyper-V は Microsoft が提供する仮想化テクノロジであり、Windows Server、Windows 10 および 11 (Home Edition を除く) に組み込まれており、ユーザーは Windows システムで仮想オペレーティング システムを実行できます。仮想マシンはホスト オペレーティング システムから分離されていますが、設定を通じてサウンド カードやストレージ デバイスなどのホストのリソースを引き続き使用できます。重要な設定の 1 つは、拡張セッション モードを有効にすることです。拡張セッションモードはハイパーです

cmd ウィンドウに、telnet は内部コマンドでも外部コマンドでもないというメッセージが表示されます。この問題はあなたを大いに悩ませたはずです。この問題は、ユーザーの操作に問題がないため表示されません。ユーザーはあまり心配する必要はありません。必要なのはそれだけです。いくつかの小さな手順です。操作設定により、Telnet が内部コマンドでも外部コマンドでもないことを示す cmd ウィンドウの問題を解決できます。telnet が内部コマンドでも外部コマンドでもないことを示す cmd ウィンドウの解決策を見てみましょう。今日の編集者。 cmd ウィンドウに、telnet が内部コマンドでも外部コマンドでもないというメッセージが表示されます 解決策: 1. コンピューターのコントロール パネルを開きます。 2. プログラムと機能を検索します。 3. 左側で「Windows の機能をオンまたはオフにする」を見つけます。 4. 「Telnet クライアント」を検索します。

1. 概要 sar コマンドは、システムアクティビティから収集されたデータを通じてシステム使用状況レポートを表示します。これらのレポートはさまざまなセクションで構成されており、各セクションにはデータの種類とデータが収集された時期が含まれます。 sar コマンドのデフォルト モードでは、CPU にアクセスするさまざまなリソース (ユーザー、システム、I/O スケジューラなど) の CPU 使用率がさまざまな時間増分で表示されます。さらに、特定の期間におけるアイドル状態の CPU の割合も表示されます。各データ ポイントの平均値はレポートの下部にリストされます。 sar レポートはデフォルトで 10 分ごとにデータを収集しますが、さまざまなオプションを使用してこれらのレポートをフィルタリングおよび調整できます。 uptime コマンドと同様に、sar コマンドも CPU 負荷の監視に役立ちます。 sarにより過負荷の発生が把握できる

Linux でサービスを再起動する正しい方法は何ですか? Linux システムを使用していると、特定のサービスを再起動する必要がある状況がよく発生しますが、サービスの再起動時に実際にサービスが停止しない、または開始しないなどの問題が発生することがあります。したがって、サービスを再起動する正しい方法を習得することが非常に重要です。 Linux では、通常、systemctl コマンドを使用してシステム サービスを管理できます。 systemctl コマンドは systemd システム マネージャーの一部です

コンピュータの CPU の温度は何度ですか? 技術の発展により、コンピュータは人々の生活に欠かせないツールとなりました。オフィスであれ、勉強であれ、娯楽であれ、コンピュータは重要な役割を果たします。コンピューターのコアコンポーネントの 1 つである CPU の温度は、コンピューターのパフォーマンスと安定性に重要な役割を果たします。では、パソコンのCPUの温度が正常かどうかはどうやって判断すればよいのでしょうか?まず最初に、CPU のモデルやブランドによって動作温度の上限が異なることを明確にする必要があります。一般的に言えば、ほとんどの CPU
