オラクルクライアント環境の構築(Mac)
今回は、オラクルクライアントの環境を構築します。
具体的には、以下の3つのプロダクト(いずれも無償)を導入します。
- Oracle Instant Client
- Oracle SQL Developer
- Oracle Map Builder
サーバー環境の確認
今回は、Mac上にオラクルクライアント環境を構築します。
サーバーは、以前の記事で構築したDocker上のOracle11XEを使用します。
docker-compose.yamlの確認
オラクル起動用のdocker-compose.yamlファイルを確認します。
version: ‘2’
services:
db:
image: oracle/database:11.2.0.2-xe
container_name: oracle
ports:
– XXXX:1521
– YYYY:5500
volumes:
– /home/takamoto/oracle/oradata:/opt/oracle/oradata
environment:
– ORACLE_PWD=ZZZZ
– ORACLE_PDB=UUU
shm_size: 1g
TNS用のデフォルトポートを変更する場合は、黄色下線のようにホスト側のポート番号を確認します。
また、環境変数ORACLE_PWDについては、systemユーザーのパスワードですので、確認しておきます。
コンテナの起動
確認が終了したらコンテナを起動します。
以下のようにコンテナの起動とポート番号が確認できればOKです。
$ docker-compose up -d
Creating oracle … done
$ docker container ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMESe42ce7347149 oracle/database:11.2.0.2-xe “/bin/sh -c ‘exec $O…” 4 weeks ago Up 2 hours (healthy) 0.0.0.0:XXXX->1521/tcp, 0.0.0.0:YYYY->5500/tcp oracle
コンテナ内のsqlplusでサーバー接続確認
ここで、コンテナ内のsqlplusからサーバーに接続いてみましょう。
sqlplusはコンテナ内で実行されていますので、ポート番号はデフォルトの1521です。また、インスタンス名は”XE”固定です。
$ docker exec -it oracle bash
bash-4.2# sqlplus system/ZZZZ@localhost:1521/xe
SQL*Plus: Release 11.2.0.2.0 Production on Mon Nov 2 00:28:49 2020
Copyright (c) 1982, 2011, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Express Edition Release 11.2.0.2.0 – 64bit Production
SQL> select INSTANCE_NAME from v$instance;
INSTANCE_NAME
ーーーーーーーーーーーー
XE
クライアント環境の構築
サーバー環境が整いましたので、クライアント環境を構築します。
クライアントはMac(Mac OS X 10.15.6)です。
なお、物件をダウンロードするために必要なオラクルアカウント(無償)は、以下から作成します。
https://profile.oracle.com/myprofile/account/create-account.jspx
Instant Client
Instant Clientは、オラクル接続用のライブラリやSQL*PlusなどのCLIから構成されています。
導入はダウンロードした物件を解凍してパスを設定するだけです。以降に導入手順を示します。
1.物件のダウンロード
以下のサイトから物件をダウンロードします。今回は、12.2をダウンロードしました。
https://www.oracle.com/database/technologies/instant-client/macos-intel-x86-downloads.html
SQL*Plusを使うためには、”Basic Package”、”SQL*Plus Package”の2つ(上記赤枠)をダウンロードします。
SQL*Loaderなどを使用したい場合は、”Tools Package”(上記青枠)もダウンロードします。
ダウンロード後は、任意のフォルダーに解凍します。
2.環境変数の設定
次に、.zshprofileを編集して環境変数のPATHとORACLE_HOMEを編集します。
以下のようなイメージです。
PATH=”$HOME/products/oracle/instantclient_12_2:...:${PATH}”
ORACLE_HOME=”$HOME/products/oracle”
3.tnsnames.oraの作成
TNS接続用のtnsnames.oraを以下のように作成します。
tns_name =( DESCRIPTION =
( ADDRESS = ( PROTOCOL = TCP ) ( HOST = server_name ) ( PORT = XXXX ))
( CONNECT_DATA = ( SERVER = DEDICATED ) ( SERVICE_NAME = xe )))
XXXXの部分は接続ポート番号、SERVICE_NAMEは、”XE”固定になります。
作成したファイルは、以下のフォルダー(TNSのデフォルト)に配置します。
$(ORACLE_HOME)/network/admin
4.接続確認
以下のように接続確認します。
% source .zprofile
% sqlplus user/password@server_name
SQL*Plus: Release 12.2.0.1.0 Production on Mon Nov 2 15:39:55 2020
Copyright (c) 1982, 2017, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Express Edition Release 11.2.0.2.0 – 64bit Production
SQL> select INSTANCE_NAME from v$instance;
INSTANCE_NAME
ーーーーーーーーーー
XE
SQL Developer
次に、SQL Developerを導入します。なお、SQL Developerの動作にはJDK8が必要です。
1.物件のダウンロード
以下のサイトから物件をダウンロードします。現在の最新版は19.1のようです。
https://www.oracle.com/technetwork/jp/developer-tools/sql-developer/downloads/index.html
JDK8のダウンロードリンク(赤枠)もあります。
2.ファイルの解凍
ダウンロードファイルを解凍するとアプリケーションファイルができます。
- ダウンロードファイル:sqldeveloper-19.1.0.094.2042-macosx.app.zip
- 解凍後のファイル :SQLDeveloper.app
3.SQL Developerの起動と接続
解凍したアプリケーションファイルをダブルクリックするとSQL Developerが起動します。
詳細は省きますが、接続の設定画面を以下に示します。TNS設定ではうまく接続できず、直接接続にて接続できました。
ユーザー作成など
話が前後しますが、ユーザーを作成して権限設定、パスワード期限(デフォルト180日)の延長をしておきます。
SQL> connect system/password@moselle — 管理者として接続
SQL> create user takamoto
identified by password
default tablespace users
temporary tablespace temp; — ユーザー作成
SQL> grant dba to takamoto; — DBA権限の付与
SQL> grant unlimited tablespace to takamoto; — 表領域の使用制限の解除
SQL> alter profile default limit password_life_time unlimited; — パスワード有効期限の解除
SQL> connect takamoto/password@moselle — 作成したユーザーとして接続
個人の技術検証用ですので、気になる制限は解除してしまっています。
Map Builder
最後にMap Builderを導入します。Map Builderは、オラクルデータベースにシェープファイルをインポートするときに便利です。
ああああ
1.物件のダウンロード
以下のサイトから物件をダウンロードします。
https://www.oracle.com/middleware/technologies/fusion-middleware-mapviewer-downloads.html
“Map Builder and Tools”をダウンロードします。
2.ダウンロード物件の解凍
ダウンロードした.zipファイルを解凍すると、2つの.jarファイルが作成されます。
- ダウンロードファイル:mapbuilder_and_tools.zip
- 解凍後のファイル :map_builder-12.2.1.3.0.jar、mv_admin_cli-12.2.1.3.0.jar
3.Map Builderの起動
map_builder-12.2.1.3.0.jarをダブルクリックすると、Map Builderが起動します。
接続画面を以下に示します。
まとめ
今回は、Macにてオラクルクライアントの環境を構築しました。
Windowsと大差のない作業でした。