| ページ一覧 | ブログ | twitter |  書式 | 書式(表) |

MyMemoWiki

「Oracle Database19c」の版間の差分

提供: MyMemoWiki
ナビゲーションに移動 検索に移動
105行目: 105行目:
 
</pre>
 
</pre>
 
*接続して停止
 
*接続して停止
 +
*https://atmarkit.itmedia.co.jp/fdb/ref/ref_oracle/shutdown.html
 
<pre>
 
<pre>
 +
SQLPLUS /NOLOG
 +
CONNECT username/password AS [SYSDBA | SYSOPER]
 +
</pre>
 +
*SHUTDOWN NORMAL:通常停止(現在データベースに接続しているすべてのユーザーがデータベースからの切断するのを待機)
 +
*SHUTDOWN IMMEDIATE:即時停止(コミットされていないトランザクションはすべてロールバックされます。現在データベースに接続しているユーザーが切断されるのを待機せず、直ちにデータベースは停止)
 +
*SHUTDOWN TRANSACTIONAL:アクティブなトランザクションを完了してからインスタンスを停止
 +
*SHUTDOWN ABORT:強制終了
 +
<pre>
 +
 
SQL> shutdown
 
SQL> shutdown
 
</pre>
 
</pre>
114行目: 124行目:
 
プラガブル・データベースが変更されました。
 
プラガブル・データベースが変更されました。
 
</pre>
 
</pre>
 +
 
===ユーザーの作成===
 
===ユーザーの作成===
 
----
 
----

2021年11月12日 (金) 05:47時点における版

| Oracle | Oracle Database10g | SQL Plus |

Oracle Database19c

Oracle Database 19c

インストール

  • Oracle Database 18c以降、Oracle Databaseソフトウェアのインストールおよび構成は、イメージ・ベースのインストールによって簡略化
  • ダウンロード

Windows


解凍したイメージのディレクトリにPATHが通されれて利用されるため、適切な場所に解凍する

Oracle inst001.png

Oracle inst002.png

Oracle inst003.png

Oracle inst004.png

Oracle inst005.png

Oracle inst006.png

  • 終了EM ExpressのURLが表示される

Oracle inst007.png

管理

2日でデータベース管理者

SQL Plus


管理者接続


  • CDBにローカル接続(OS認証)
  1. > sqlpuls / as sysdba
  • CDBにローカル接続(パスワード認証)
  1. > sqlpuls system/

簡易接続


  1. > connect ユーザー名/パスワード@ホスト名[:リスナーポート]/サービス名
  2. > sqlplus docweb/{password}@taisetsu.local:1521/orclpdb

マルチテナント

https://www.ashisuto.co.jp/tech-note/article/20130912_oracle.html

CDBの確認


  1. SQL> show con_name
  2.  
  3. CON_NAME
  4. ------------------------------
  5. CDB$ROOT

起動/停止


  • 起動
  1. SQL> startup

PDBの確認


  1. SQL> show pdbs
  2.  
  3. CON_ID CON_NAME OPEN MODE RESTRICTED
  4. ---------- ------------------------------ ---------- ----------
  5. 2 PDB$SEED READ ONLY NO
  6. 3 ORCLPDB READ WRITE NO

PDBへ接続


  1. SQL> alter session set container=ORCLPDB;
  2.  
  3. セッションが変更されました。
  • 直接
  1. < sqlplus user/password@pdbname

PDB 起動/停止


  • 接続して起動
  1. SQL> startup open
  • 接続せずに(すべての場合all指定、個別の場合名前を指定)
  1. SQL> alter pluggable database all open;
  2.  
  3. プラガブル・データベースが変更されました。
  1. SQLPLUS /NOLOG
  2. CONNECT username/password AS [SYSDBA | SYSOPER]
  • SHUTDOWN NORMAL:通常停止(現在データベースに接続しているすべてのユーザーがデータベースからの切断するのを待機)
  • SHUTDOWN IMMEDIATE:即時停止(コミットされていないトランザクションはすべてロールバックされます。現在データベースに接続しているユーザーが切断されるのを待機せず、直ちにデータベースは停止)
  • SHUTDOWN TRANSACTIONAL:アクティブなトランザクションを完了してからインスタンスを停止
  • SHUTDOWN ABORT:強制終了
  1.  
  2. SQL> shutdown
  • 接続せずに停止(すべての場合all指定、個別の場合名前を指定)
  1. SQL> alter pluggable database all close;
  2.  
  3. プラガブル・データベースが変更されました。

ユーザーの作成


  • ユーザーの作成と全権限の付与
  1. SQL> create user {{USER}} identified by "{{PASSWORD}}";
  2.  
  3. ユーザーが作成されました。
  4.  
  5. SQL> grant all privileges to {{USER}};
  6.  
  7. 権限付与が成功しました。

データベースサーバー停止

  • 停止
  1. SQL> shutdown immediate

Oracle Instant Client


  • ダウンロード
  • 軽量で簡単にインストールできる、無料のOracle Databaseツール、ライブラリ、SDKを使ってアプリケーションを作成し、Oracle Databaseインスタンスに接続
  • Oracle Instant Clientでは、ローカルまたはリモートのOracle Databaseにアプリケーションを接続して、開発および本番環境へのデプロイが可能
  • Instant Clientライブラリは、基本的なデータ機能とハイエンドなデータ機能に加えて、必要なクライアントネットワーク接続も備えているため、Oracle Databaseを余すところなく活用できます。*Node.js、Python、PHPのような人気のある言語や環境で使われるOracle APIを下から支え、OCI、OCCI、JDBC、ODBC、Pro*Cにもアクセスできます。
  • Instant Clientに含まれるSQL*PlusやOracle Data Pumpなどのツールで、データにすばやく、簡単にアクセスできるようになります。

Network

Net Listener 構成と管理


SIDとサービス名


  • インスタンスはインスタンス名で識別されます。
  • インスタンス名は、INSTANCE_NAME初期化パラメータで指定されます。インスタンス名のデフォルトは、データベース・インスタンスのOracleシステム識別子(SID)です。
  • サービス名はデータベースの論理表現です。インスタンスを起動すると、インスタンスはそれ自体を1つ以上のサービス名を使用してリスナーに登録します。
  • クライアント・プログラムまたはデータベースがリスナーに接続すると、これらはサービスへの接続を要求します。*
  • サービス名は複数のデータベース・インスタンスを識別することができ、インスタンスは複数のサービスに属することができます。
  • リスナーはクライアントとインスタンスとの間の仲介役を果し、接続要求を適切なインスタンスに渡します。サービスに接続するクライアントは、必要なインスタンスを指定する必要がありません。

リスナー


  • リスナーが、ネットワークを介して送信されるクライアントからの接続要求を受付け、サーバープロセスに引き渡すことにより接続を行う。
  • インスタンスと同じマシンにリスナーが起動している必要がある

Oracle19c listener.png

ステータス確認

  1. C:\Users\hiroto>lsnrctl status
  2.  
  3. LSNRCTL for 64-bit Windows: Version 19.0.0.0.0 - Production on 10-11月-2021 23:26:43
  4.  
  5. Copyright (c) 1991, 2019, Oracle. All rights reserved.
  6.  
  7. (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost)(PORT=1521)))に接続中
  8. リスナーのステータス
  9. ------------------------
  10. 別名 LISTENER
  11. バージョン TNSLSNR for 64-bit Windows: Version 19.0.0.0.0 - Production
  12. 開始日 23-10月-2021 23:48:28
  13. 稼働時間 17 23 時間 38 16
  14. トレース・レベル off
  15. セキュリティ ON: Local OS Authentication
  16. SNMP OFF
  17. パラメータ・ファイル C:\WINDOWS.X64_193000_db_home\network\admin\listener.ora
  18. ログ・ファイル C:\WINDOWS.X64_193000_db_home\log\diag\tnslsnr\taisetsu\listener\alert\log.xml
  19. リスニング・エンドポイントのサマリー...
  20. (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1521)))
  21. (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC1521ipc)))
  22. (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=taisetsu)(PORT=1521)))
  23. (DESCRIPTION=(ADDRESS=(PROTOCOL=tcps)(HOST=taisetsu)(PORT=5500))(Security=(my_wallet_directory=C:\ORACLE\admin\orcl\xdb_wallet))(Presentation=HTTP)(Session=RAW))
  24. サービスのサマリー...
  25. サービス"52448234712340b69f274bcc790ecfe0"には、1件のインスタンスがあります。
  26. インスタンス"orcl"、状態READYには、このサービスに対する1件のハンドラがあります...
  27. サービス"CLRExtProc"には、1件のインスタンスがあります。
  28. インスタンス"CLRExtProc"、状態UNKNOWNには、このサービスに対する1件のハンドラがあります...
  29. サービス"c5484a2ca5084e87b683e77b0f10428f"には、1件のインスタンスがあります。
  30. インスタンス"orcl"、状態READYには、このサービスに対する1件のハンドラがあります...
  31. サービス"orcl"には、1件のインスタンスがあります。
  32. インスタンス"orcl"、状態READYには、このサービスに対する1件のハンドラがあります...
  33. サービス"orclXDB"には、1件のインスタンスがあります。
  34. インスタンス"orcl"、状態READYには、このサービスに対する1件のハンドラがあります...
  35. サービス"orclpdb"には、1件のインスタンスがあります。
  36. インスタンス"orcl"、状態READYには、このサービスに対する1件のハンドラがあります...
  37. コマンドは正常に終了しました。
起動と停止

  1. > lsnrctl start
  2. > lsnrctl stop
tnspingで接続確認

  1. C:\Users\hiroto>tnsping taisetsu.local
  2.  
  3. TNS Ping Utility for 64-bit Windows: Version 19.0.0.0.0 - Production on 10-11月-2021 23:50:04
  4.  
  5. Copyright (c) 1997, 2019, Oracle. All rights reserved.
  6.  
  7. パラメータ・ファイルを使用しました:
  8. C:\WINDOWS.X64_193000_db_home\network\admin\sqlnet.ora
  9.  
  10. エイリアスを解決するためにEZCONNECTアダプタを使用しました。
  11. (DESCRIPTION=(CONNECT_DATA=(SERVICE_NAME=))(ADDRESS=(PROTOCOL=tcp)(HOST=fe80::55ec:21e6:5d5f:40dd%15)(PORT=1521))(ADDRESS=(PROTOCOL=tcp)(HOST=2402:6b00:3666:5800:c826:b046:807:8416)(PORT=1521))(ADDRESS=(PROTOCOL=tcp)(HOST=2402:6b00:3666:5800:55ec:21e6:5d5f:40dd)(PORT=1521))(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.0.20)(PORT=1521))(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.0.20)(PORT=1521))(ADDRESS=(PROTOCOL=tcp)(HOST=2402:6b00:3666:5800:55ec:21e6:5d5f:40dd%15)(PORT=1521)))に接続の試行
  12. OK (0ミリ秒)
ファイアーウォール

  • 適宜設定

Oracle19c firewall open.png

サービスネーミング


Oracle19c service.png

Oracle Net Services接続のクイック・スタート

SQL Developer

Oracle sql dev.png

  • Oracle Databaseのフリーの開発環境
  • オンプレミスおよびCloudのどちらにOracle Databaseがある場合でも、Oracle Databaseの開発や管理
  • SQL Developerでは、PL/SQLアプリケーションのend−to-end開発、SQLによる問合せやスクリプトの実行を行うワークシート、データベース管理を行うDBAコンソール、レポート・インターフェース、完全なデータ・モデリング・ソリューション、3rd Party データベースからOracleへのデータ移行などの機能が提供

接続


Oracle19c sqldev prop.png

Sql dev con2.png

Mac


ODP.NET Managed Driver


Tool

Mac


  • 以下をそれぞれのパッケージに実施
  1. $ cd /Volumes/instantclient-basic-macos.x64-19.8.0.0.0dbru/
  2. $ ./install_ic.sh
  3. $ sudo mv -f instantclient_19_8 /usr/local
  • PATHを通す
  1. $ vi ~/.bash_profile
  2. export PATH="/usr/local/instantclient_19_8:$PATH"
  • 実行
  1. $ sqlplus
  2.  
  3. SQL*Plus: Release 19.0.0.0.0 - Production on Fri Jul 2 18:37:51 2021
  4. Version 19.8.0.0.0
  5.  
  6. Copyright (c) 1982, 2020, Oracle. All rights reserved.
  7.  
  8. Enter user-name:

Oracle Enterprise Manager Database Express


  • EM Expressは、Oracle Database内に構築されるWebベースのデータベース管理ツール
  • 中間層またはミドルウェア・コンポーネントを持たないため、データベース・サーバーのオーバーヘッドはほとんどありません
  • データベースがオープンしているときにのみ使用できます

PDBの管理


  • PDB用のEM Expressを起動するには、PDBが読取り/書込みモードで開かれていることを確認
  • PDBを含んでいるCDBのCDB$ROOTコンテナに接続して、CDBのグローバル・ポートを構成するたのSQL文を発行
  1. SQL> show pdbs
  2.  
  3. CON_ID CON_NAME OPEN MODE RESTRICTED
  4. ---------- ------------------------------ ---------- ----------
  5. 2 PDB$SEED READ ONLY NO
  6. 3 ORCLPDB READ WRITE NO
  7.  
  8. SQL> alter session set container=CDB$ROOT;
  9. SQL> exec dbms_xdb_config.setglobalportenabled(TRUE);
  10.  
  11. PL/SQLプロシージャが正常に完了しました。
  1. SQL> alter session set container=ORCLPDB;
  2.  
  3. セッションが変更されました。
  4.  
  5. SQL> select dbms_xdb_config.gethttpsport() from dual;
  6.  
  7. DBMS_XDB_CONFIG.GETHTTPSPORT()
  8. ------------------------------
  9. 0
  • gethttpsportプロシージャによって0が返される場合はHTTPSポートを手動で構成する必要があります。

CDB用EM Express起動


  1. SQL> alter session set container=CDB$ROOT;
  2.  
  3. セッションが変更されました。
  4.  
  5. SQL> select dbms_xdb_config.gethttpsport() from dual;
  6.  
  7. DBMS_XDB_CONFIG.GETHTTPSPORT()
  8. ------------------------------
  9. 5500


Oracle em express01.png Oracle em express02.png

切り替え

  • 従来のAdobe Flash版のEM Expressに切り替える
  1. SQL> @?/rdbms/admin/execemx emx
  • 新しいJET版のOracle EM Expressに戻る
  1. SQL> @?/rdbms/admin/execemx omx