Oracle Database19c
| Oracle | Oracle Database10g | SQL Plus |
Oracle Database19c
インストール
- Oracle Database 18c以降、Oracle Databaseソフトウェアのインストールおよび構成は、イメージ・ベースのインストールによって簡略化
- ダウンロード
Windows
解凍したイメージのディレクトリにPATHが通されれて利用されるため、適切な場所に解凍する
- 終了EM ExpressのURLが表示される
管理
SQL Plus
管理者接続
- CDBにローカル接続(OS認証)
> sqlpuls / as sysdba
- CDBにローカル接続(パスワード認証)
> sqlpuls system/
簡易接続
> connect ユーザー名/パスワード@ホスト名[:リスナーポート]/サービス名 > sqlplus docweb/{password}@taisetsu.local:1521/orclpdb
マルチテナント
https://www.ashisuto.co.jp/tech-note/article/20130912_oracle.html
CDBの確認
SQL> show con_name CON_NAME ------------------------------ CDB$ROOT
起動/停止
- 起動
SQL> startup
PDBの確認
SQL> show pdbs CON_ID CON_NAME OPEN MODE RESTRICTED ---------- ------------------------------ ---------- ---------- 2 PDB$SEED READ ONLY NO 3 ORCLPDB READ WRITE NO
PDBへ接続
SQL> alter session set container=ORCLPDB; セッションが変更されました。
- 直接
< sqlplus user/password@pdbname
PDB 起動/停止
- 接続して起動
SQL> startup open
- 接続せずに(すべての場合all指定、個別の場合名前を指定)
SQL> alter pluggable database all open; プラガブル・データベースが変更されました。
SQLPLUS /NOLOG CONNECT username/password AS [SYSDBA | SYSOPER]
- SHUTDOWN NORMAL:通常停止(現在データベースに接続しているすべてのユーザーがデータベースからの切断するのを待機)
- SHUTDOWN IMMEDIATE:即時停止(コミットされていないトランザクションはすべてロールバックされます。現在データベースに接続しているユーザーが切断されるのを待機せず、直ちにデータベースは停止)
- SHUTDOWN TRANSACTIONAL:アクティブなトランザクションを完了してからインスタンスを停止
- SHUTDOWN ABORT:強制終了
SQL> shutdown
- 接続せずに停止(すべての場合all指定、個別の場合名前を指定)
SQL> alter pluggable database all close; プラガブル・データベースが変更されました。
ユーザーの作成
- ユーザーの作成と全権限の付与
SQL> create user {{USER}} identified by "{{PASSWORD}}"; ユーザーが作成されました。 SQL> grant all privileges to {{USER}}; 権限付与が成功しました。
データベースサーバー停止
- 停止
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つ以上のサービス名を使用してリスナーに登録します。
- クライアント・プログラムまたはデータベースがリスナーに接続すると、これらはサービスへの接続を要求します。*
- サービス名は複数のデータベース・インスタンスを識別することができ、インスタンスは複数のサービスに属することができます。
- リスナーはクライアントとインスタンスとの間の仲介役を果し、接続要求を適切なインスタンスに渡します。サービスに接続するクライアントは、必要なインスタンスを指定する必要がありません。
リスナー
- リスナーが、ネットワークを介して送信されるクライアントからの接続要求を受付け、サーバープロセスに引き渡すことにより接続を行う。
- インスタンスと同じマシンにリスナーが起動している必要がある
ステータス確認
C:\Users\hiroto>lsnrctl status LSNRCTL for 64-bit Windows: Version 19.0.0.0.0 - Production on 10-11月-2021 23:26:43 Copyright (c) 1991, 2019, Oracle. All rights reserved. (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost)(PORT=1521)))に接続中 リスナーのステータス ------------------------ 別名 LISTENER バージョン TNSLSNR for 64-bit Windows: Version 19.0.0.0.0 - Production 開始日 23-10月-2021 23:48:28 稼働時間 17 日 23 時間 38 分 16 秒 トレース・レベル off セキュリティ ON: Local OS Authentication SNMP OFF パラメータ・ファイル C:\WINDOWS.X64_193000_db_home\network\admin\listener.ora ログ・ファイル C:\WINDOWS.X64_193000_db_home\log\diag\tnslsnr\taisetsu\listener\alert\log.xml リスニング・エンドポイントのサマリー... (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1521))) (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC1521ipc))) (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=taisetsu)(PORT=1521))) (DESCRIPTION=(ADDRESS=(PROTOCOL=tcps)(HOST=taisetsu)(PORT=5500))(Security=(my_wallet_directory=C:\ORACLE\admin\orcl\xdb_wallet))(Presentation=HTTP)(Session=RAW)) サービスのサマリー... サービス"52448234712340b69f274bcc790ecfe0"には、1件のインスタンスがあります。 インスタンス"orcl"、状態READYには、このサービスに対する1件のハンドラがあります... サービス"CLRExtProc"には、1件のインスタンスがあります。 インスタンス"CLRExtProc"、状態UNKNOWNには、このサービスに対する1件のハンドラがあります... サービス"c5484a2ca5084e87b683e77b0f10428f"には、1件のインスタンスがあります。 インスタンス"orcl"、状態READYには、このサービスに対する1件のハンドラがあります... サービス"orcl"には、1件のインスタンスがあります。 インスタンス"orcl"、状態READYには、このサービスに対する1件のハンドラがあります... サービス"orclXDB"には、1件のインスタンスがあります。 インスタンス"orcl"、状態READYには、このサービスに対する1件のハンドラがあります... サービス"orclpdb"には、1件のインスタンスがあります。 インスタンス"orcl"、状態READYには、このサービスに対する1件のハンドラがあります... コマンドは正常に終了しました。
起動と停止
> lsnrctl start > lsnrctl stop
tnspingで接続確認
C:\Users\hiroto>tnsping taisetsu.local TNS Ping Utility for 64-bit Windows: Version 19.0.0.0.0 - Production on 10-11月-2021 23:50:04 Copyright (c) 1997, 2019, Oracle. All rights reserved. パラメータ・ファイルを使用しました: C:\WINDOWS.X64_193000_db_home\network\admin\sqlnet.ora エイリアスを解決するためにEZCONNECTアダプタを使用しました。 (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)))に接続の試行 中 OK (0ミリ秒)
ファイアーウォール
- 適宜設定
サービスネーミング
Oracle Net Services接続のクイック・スタート
SQL Developer
- ダウンロード して解凍
- Oracle Databaseのフリーの開発環境
- オンプレミスおよびCloudのどちらにOracle Databaseがある場合でも、Oracle Databaseの開発や管理
- SQL Developerでは、PL/SQLアプリケーションのend−to-end開発、SQLによる問合せやスクリプトの実行を行うワークシート、データベース管理を行うDBAコンソール、レポート・インターフェース、完全なデータ・モデリング・ソリューション、3rd Party データベースからOracleへのデータ移行などの機能が提供
接続
Mac
ODP.NET Managed Driver
- https://mat0401.info/blog/oracle-odpnet-manged1/
- Oracle Clientのインストールなしで使用できる
- Windows 開発者ガイド
- パフォーマンスの向上
Data Pump
Jobに接続し開始・停止・確認
- 以下SQLでJOB_NAMEを確認
SELECT * FROM DBA_DATAPUMP_JOBS;
- expdp/impdp user/pass attach=JOB_NAME で接続
- help/status/start_job/stop_job/kill_job
Tool
Mac
- https://www.oracle.com/jp/database/technologies/instant-client/macos-intel-x86-downloads.html
- ダウンロードしてそれぞれマウント
- Basicパッケージ(DMG)
- SQL*Plusパッケージ(DMG)
- 以下をそれぞれのパッケージに実施
$ cd /Volumes/instantclient-basic-macos.x64-19.8.0.0.0dbru/ $ ./install_ic.sh $ sudo mv -f instantclient_19_8 /usr/local
- PATHを通す
$ vi ~/.bash_profile export PATH="/usr/local/instantclient_19_8:$PATH"
- 実行
$ sqlplus SQL*Plus: Release 19.0.0.0.0 - Production on Fri Jul 2 18:37:51 2021 Version 19.8.0.0.0 Copyright (c) 1982, 2020, Oracle. All rights reserved. Enter user-name:
Oracle Enterprise Manager Database Express
- EM Expressは、Oracle Database内に構築されるWebベースのデータベース管理ツール
- 中間層またはミドルウェア・コンポーネントを持たないため、データベース・サーバーのオーバーヘッドはほとんどありません
- データベースがオープンしているときにのみ使用できます
PDBの管理
- PDB用のEM Expressを起動するには、PDBが読取り/書込みモードで開かれていることを確認
- PDBを含んでいるCDBのCDB$ROOTコンテナに接続して、CDBのグローバル・ポートを構成するたのSQL文を発行
SQL> show pdbs CON_ID CON_NAME OPEN MODE RESTRICTED ---------- ------------------------------ ---------- ---------- 2 PDB$SEED READ ONLY NO 3 ORCLPDB READ WRITE NO SQL> alter session set container=CDB$ROOT; SQL> exec dbms_xdb_config.setglobalportenabled(TRUE); PL/SQLプロシージャが正常に完了しました。
SQL> alter session set container=ORCLPDB; セッションが変更されました。 SQL> select dbms_xdb_config.gethttpsport() from dual; DBMS_XDB_CONFIG.GETHTTPSPORT() ------------------------------ 0
- gethttpsportプロシージャによって0が返される場合はHTTPSポートを手動で構成する必要があります。
CDB用EM Express起動
SQL> alter session set container=CDB$ROOT; セッションが変更されました。 SQL> select dbms_xdb_config.gethttpsport() from dual; DBMS_XDB_CONFIG.GETHTTPSPORT() ------------------------------ 5500
- https://taisetsu:5500/em
- sysやsystemで接続
切り替え
- 従来のAdobe Flash版のEM Expressに切り替える
SQL> @?/rdbms/admin/execemx emx
- 新しいJET版のOracle EM Expressに戻る
SQL> @?/rdbms/admin/execemx omx
© 2006 矢木浩人