search
LoginSignup
38

More than 1 year has passed since last update.

posted at

updated at

Windows10にOracle12c インストール、DB作成、ユーザ作成、接続までの手順

概要

Oracle12cをインストールして、DB作成してSQLPLUSで接続するまでの手順を記載します。

環境

  • OS: Windows10 Professional 64bit
  • Oracle: 12c(12.2.0.1.0)

DB構成

ここでは下記のとおり2つのPDB構成を作成します。
※PDBとは?→http://qiita.com/AkihikoOgata/items/fdb83a1577bbf8a74cde

ホスト ポート CDB PDB SID
ローカル 1521 orcl pdb1 SRV_PDB1
ローカル 1521 orcl pdb2 SRV_PDB2

手順

①インストール

こちら↓の資料を参考に「4.3.1 Oracle EM Express の稼働確認」まで進めます。
http://www.oracle.com/technetwork/jp/database/enterprise-edition/documentation/db12-1-0-2-install-guide-winx64-2323059-ja.pdf

注意点としては、「dbca.bat」を実行する際は管理者権限(右クリックして「管理者として実行」)で実行してください。管理者権限で実行しないとリスナー起動に失敗します。

②設定変更

SIDで接続可能にするために設定を追加します。

listener.oraの変更

ORACLE_HOME\network\admin\listener.ora」ファイルに
USE_SID_AS_SERVICE_LISTENER = ON
を追加します。

listener.ora
SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = CLRExtProc)
      (ORACLE_HOME = [任意のパス])
      (PROGRAM = extproc)
      (ENVS = "EXTPROC_DLLS=ONLY:[任意のパス]\bin\oraclr12.dll")
    )
  )

USE_SID_AS_SERVICE_LISTENER = ON
LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = [任意のホスト])(PORT = 1521))
    )
  )

sqlnet.oraの変更

ORACLE_HOME\network\admin\sqlnet.ora」ファイルに
SQLNET.ALLOWED_LOGON_VERSION=8
を追加します。

sqlnet.ora
SQLNET.AUTHENTICATION_SERVICES= (NTS)
NAMES.DIRECTORY_PATH= (TNSNAMES, ONAMES, HOSTNAME)
SQLNET.ALLOWED_LOGON_VERSION=8

tnsnames.oraの変更

ORACLE_HOME\network\admin\tnsnames.ora」ファイルに以下を追加します。
※SID接続名は「SRV_PDB1」と「SRV_PDB2」にしています。

tnsnames.ora
SRV_PDB1=
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = [任意のホスト])(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = [任意のPDB名])
    )
  )

SRV_PDB2=
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = [任意のホスト名])(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = [任意のPDB名])
    )
  )

リスナーの再起動

コマンドプロンプト(管理者権限で実行)にて、以下コマンドを実行します。

lsnrctl stop
lsnrctl start

③PDBオープン、オープン状態保持設定

コマンドプロンプトにて、以下コマンドを実行しSQL Plusを実行します。

sqlplus sys/[パスワード] as sysdba

SQL Plusにて以下コマンドを実行しPDBが「READ WRITE」であることを確認します。

ALTER PLUGGABLE DATABASE ALL OPEN;
ALTER PLUGGABLE DATABASE ALL SAVE STATE;
ALTER SESSION SET CONTAINER=[任意のPDB名];
SHOW CON_NAME;
select name, open_mode from v$pdbs;

※PDB名が「pdb1」の場合の例↓
無題.png

④ユーザ作成

PDBにユーザを作成します。コマンドプロンプトにて、以下コマンドを実行しSQLPLUSを起動します。

sqlplus / as sysdba

SQL Plusにて以下コマンドを実行しユーザを作成します。
ユーザを作成するPDBにセッションをセット

ALTER SESSION SET CONTAINER = [任意のPDB名];
SHOW CON_NAME

ユーザを作成

CREATE USER [任意のユーザ名] IDENTIFIED BY [任意のユーザパスワード];

ユーザ権限を付与

GRANT CONNECT , RESOURCE TO [任意のユーザ名];

※「pdb1」に「hoge」ユーザを「hoge_pwd」パスワードで作成した場合の例↓
無題2.png

⑤接続確認

コマンドプロンプトにて、以下コマンドを実行しSQLPLUSで接続できることを確認します。

sqlplus [任意のユーザ名]/[任意のユーザパスワード]@[任意のSID]

※「SRV_PDB1」のSIDに「hoge」ユーザで接続した場合の例↓
無題3.png

ORA-01950が発生したら・・・

alter user hoge quota unlimited on USERS;

おまけ

「A5:SQL Mk-2」ツールで接続する場合は以下の通りです。
※参照:http://a5m2.mmatsubara.com/

OCI経由

無題4.png

直接接続

無題5.png

以上です。

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
What you can do with signing up
38