Linux に Oracle をインストールする (コマンド ライン インストールの詳細なチュートリアル)

1. Linux でのインストール (コマンドラインインストール)

1. 設置環境

以下のインストール環境は仮想マシンのテスト環境でのものであり、参考までに
OS:CentOS 7
メモリ:2G
CPU:デュアルコア
ハードディスク:50G

容量が 10G しかないのでroot、ここに新しいハードディスクがあります。ファイル形式はext4、容量は50G/data以下に

2. インストールパッケージをダウンロードする

これまでのところ、Oracle 公式 Web サイトでは Oracle12c パッケージを見つけることができません。

検索リソースの検索ページに移動して、対応するバージョンのダウンロードを検索できます。

  1. キーワードを検索しOracle Database 12cOracle Database 12c 12.2.0.1.0 ( Oracle Database In-Memory, Oracle Database Vault )キューに追加することを選択します。
  2. 右上隅をクリックしてContinueコンポーネント パッケージの選択に移動します
  3. を選択してくださいOracle Database 12.2.0.1.0リアプラットフォームの選択Linux x86_64
  4. そしてContinueずっとDownload
  5. 上記の手順でダウンロードしたダウンローダーを開き、ダウンロード パスを選択すると、自動的にダウンロードされます

3. 環境構築の準備

3.1 ファイアウォールの設定


3.2 selinux の設定

臨時休業:setenforce 0

完全に閉鎖されました: 編集され/etc/selinux/config、に変更されましたSELINUX=disabled

3.3 依存パッケージのインストール

yum -y install binutils compat-libcap1 compat-libstdc++-33 compat-libstdc++-33*i686 compat-libstdc++-33*.devel compat-libstdc++-33 compat-libstdc++-33*.devel gcc gcc-c++ glibc glibc*.i686 glibc-devel glibc-devel*.i686 ksh libaio libaio*.i686 libaio-devel libaio-devel*.devel libgcc libgcc*.i686 libstdc++ libstdc++*.i686 libstdc++-devel libstdc++-devel*.devel libXi libXi*.i686 libXtst libXtst*.i686 make sysstat unixODBC unixODBC*.i686 unixODBC-devel unixODBC-devel*.i686

インストール後のパッケージを確認してください、合計 31

rpm -q binutils compat-libcap1 compat-libstdc++-33 gcc gcc-c++ glibc glibc-devel ksh libaio libaio-devel libgcc libstdc++ libstdc++-devel libXi libXtst make sysstat unixODBC unixODBC-devel

3.4 ユーザーとユーザーグループの作成

ユーザーグループoinstall作成dba

groupadd oinstall
groupadd dba

oracleユーザーの作成

useradd -g oinstall -G dba oracle

oracleパスワードを設定する

passwd oracle

作成結果の表示

id oracle

注: ここで検出されたものは、 でuidある必要がありますoraclegidである必要がありますoinstallである必要がありますdba

3.5 カーネルパラメータの変更

開いている設定ファイルを編集する

vim /etc/sysctl.conf

ファイルに追加します:

fs.aio-max-nr=1048576
fs.file-max=6815744
kernel.shmall=524288
kernel.shmmax=2147483647
kernel.sem=250 32000 100 128
kernel.shmmni=4096
kernel.panic_on_oops=1
net.core.rmem_default=262144
net.core.rmem_max=4194304
net.core.wmem_default=262144
net.core.wmem_max=1048576
net.ipv4.conf.all.rp_filter=2
net.ipv4.conf.default.rp_filter=2
fs.aio-max-nr=1048576
net.ipv4.ip_local_port_range=9000 65500

各パラメータの説明が添付されています。

**fs.aio-max-nr:** このパラメータは、未処理の同時リクエストを制限し、I/O サブシステムの障害を回避するために設定する必要があります。
**fs.file-max:** このパラメータは、システムで許可されるファイル ハンドルの最大数を決定します。ファイル ハンドルの設定は、Linux システムで開くことができるファイルの数を表します。
**kernel.shmall:** このパラメータは、使用できる共有メモリの総ページ数を制御します。Linux 共有メモリのページ サイズは 4KB で、共有メモリ セグメントのサイズは共有メモリ ページ サイズの整数倍です。共有メモリ セグメントの最大サイズは 16G であるため、必要な共有メモリ ページ数は 16GB/4KB=16777216KB /4KB=4194304 (ページ)、つまり kernel.shmall = 4194304 に設定すると、64 ビット システムでは 16GB の物理メモリになります。
* *kernel.shmmax: ** はカーネル パラメータの中で最も重要なパラメータの 1 つであり、単一の共有メモリ セグメントの最大値を定義するために使用されます設定は十分な大きさにする必要があります。設定が低すぎると、複数の共有メモリ セグメントを作成する必要が生じ、システム パフォーマンスの低下につながる可能性があります。システム低下の主な原因としては、インスタンスを起動してServerProcessを作成する際に、小さな共有メモリセグメントが複数存在するため、その際にシステムパフォーマンスが若干低下する可能性があります(起動時に複数の仮想アドレスセグメントを作成する必要があるため、プロセス内 (作成時にプロセスに複数のセグメントを「認識」させると、ある程度の影響があります)、それ以外の場合には影響はありません。
**公式推奨値:**32 ビット Linux システム: 最大値は 4GB (4294967296 バイト)-1 バイト、つまり 4294967295 です。推奨値はメモリの半分以上であるため、32 ビット システムの場合、一般的に望ましい値は 4294967295 です。
64 ビット Linux システム: 望ましい最大値は物理メモリ値 -1 バイトで、推奨値は物理メモリの半分以上です。たとえば、物理メモリが 12GB の場合、望ましい値は 12 1024 1024* です。1024-1 =12884901887。
**kernel.shmmni:** このパラメータは、共有メモリ セグメントの最大数です。shmmni のデフォルト値は 4096 で、通常はこれで十分です。
カーネル.sem:

kernel.sem = 250 32000 100 128 を例に挙げます。

  • 250 はパラメータ semmsl の値で、セマフォ セットに含めることができるセマフォの最大数を示します。
  • 32000 はパラメータ semmns の値で、システムで許可されるセマフォの最大数を示します。
  • 100 はパラメータ semopm の値で、1 つの semopm() 呼び出しがセマフォ セットに対して実行できる操作の数を示します。
  • 128 はパラメータ semmni の値で、システム セマフォ セットの総数を示します。

**net.ipv4.ip_local_port_range:** アプリケーションが使用できる IPv4 ポートの範囲を示します。
**net.core.rmem_default: **ソケット受信バッファ サイズのデフォルト値を示します。
**net.core.rmem_max:** ソケット受信バッファサイズの最大値を示します。
**net.core.wmem_default: **ソケット送信バッファ サイズのデフォルト値を示します。
**net.core.wmem_max:** ソケット送信バッファサイズの最大値を示します。

効果的な構成

sysctl -p

3.6 構成の変更

3.6.1limits.confの編集

vim /etc/security/limits.conf

ファイルの末尾に以下を追加します。

oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft stack 10240
oracle hard stack 10240

1 行目はプロセス数のソフト制限を設定します。2
行目はプロセス数のハード制限を設定します。3
行目はファイル数のソフト制限を設定します。4
行目はファイル数のソフト制限を設定します。ファイル数のハードリミットを設定する

3.6.2 ログインの編集

vim /etc/pam.d/login

以下を追加します

session required /lib64/security/pam_limits.so
session required pam_limits.so

3.6.3 プロファイルの編集

vim /etc/profile

ファイルの最後に以下を追加します

if [ $USER = "oracle" ]; then
    if [ $SHELL = "/bin/ksh" ]; then
        ulimit -p 16384 ulimit -n 65536
    else
        ulimit -u 16384 -n 65536
    fi
fi

設定ファイルを有効にする

source /etc/profile

3.6.4 データベースディレクトリの作成

mkdir -p /data/server/oracle
chown -R oracle:oinstall /data/server/oracle
chmod -R 775 /data/server/oracle

3.6.5 Oracle ユーザーの構成

Oracle ユーザーに切り替える

su oracle

環境変数ファイルを開いて編集し、Oracle ユーザー環境変数を構成します。

vim ~/.bash_profile

最後に追加します

export ORACLE_BASE=/data/server/oracle
export ORACLE_SID=orcl

設定を有効にする

source ~/.bash_profile

4. インストール、展開、構成

4.1 Oracle インストール パッケージをアップロードする

フォルダーを作成する

su root
mkdir -p /data/file/oracle
chown -R oracle:oinstall /data/file/oracle
chmod -R 775 /data/file/oracle

# 传输安装包
scp -P 12305 [email protected]:/data/backup/db/oracle/12c/V839960-01.zip /data/file/oracle

4.2 解凍ツールのインストール

root ユーザーに切り替える

su - root

解凍ツールをインストールする

yum install -y unzip zip

4.3 ファイルを解凍する

Oracleユーザーに切り替える

su - oracle

ファイルを解凍する

unzip /data/file/oracle/V839960-01.zip

4.4 対応するテンプレートをコピーする

元のファイルの内容に影響を与えないように(ファイルスクリプトの内容は後で変更されます)、対応するテンプレートをコピーします。もちろん、この手順を省略することもできます。

su oracle
mkdir /data/file/oracle/database/etc
cp  /data/file/oracle/database/response/* /data/file/oracle/database/etc

権限の設定

su root
chmod 700 /data/file/oracle/database/etc/*.rsp

4.5 ファイルの内容を編集する

Oracleユーザーに切り替える

su - oracle

db_install.rspを開いて編集します

vim /data/file/oracle/database/etc/db_install.rsp

次の項目を見つけて変更します(実際の状況に応じて変更します。たとえば、私の側の oracle ディレクトリが調整されています)。

oracle.install.option=INSTALL_DB_SWONLY // 安装类型  
UNIX_GROUP_NAME=oinstall // 安装组  
INVENTORY_LOCATION=/data/server/oracle/oraInventory //INVENTORY目录(不填就是默认值)  
ORACLE_HOME=/data/server/oracle/product/12/db_1
ORACLE_BASE=/data/server/oracle
oracle.install.db.InstallEdition=EE     // 企业版本  
oracle.install.db.OSDBA_GROUP=dba  
oracle.install.db.OSOPER_GROUP=oinstall
oracle.install.db.OSBACKUPDBA_GROUP=oinstall  
oracle.install.db.OSDGDBA_GROUP=oinstall  
oracle.install.db.OSKMDBA_GROUP=oinstall
oracle.install.db.OSRACDBA_GROUP=oinstall

oracle.install.db.config.starterdb.type=GENERAL_PURPOSE //数据库类型  
oracle.install.db.config.starterdb.globalDBName=orcl  
oracle.install.db.config.starterdb.SID=orcl
oracle.install.db.config.starterdb.memoryLimit=81920 //自动管理内存的内存(M)  
oracle.install.db.config.starterdb.password.ALL=oracle//设定所有数据库用户使用同一个密码

SECURITY_UPDATES_VIA_MYORACLESUPPORT=false  
DECLINE_SECURITY_UPDATES=true

4.6 インストールの開始

db_install.rspファイルを実行する

cd /data/file/oracle/database/
./runInstaller -ignoreSysPrereqs -ignorePrereq -waitforcompletion -showProgress -silent -responseFile /data/file/oracle/database/etc/db_install.rsp
# 可以使用/data/server/oracle/oraInventory/logs/installActions2023-06-20_06-30-58PM.log实时监控日志
tail -f /data/server/oracle/oraInventory/logs/installActions2023-06-20_06-30-58PM.log

インストールがほぼ完了すると、root ユーザーに切り替えて 2 つのスクリプトを実行するように求められます。

su - root
sh /data/server/oracle/oraInventory/orainstRoot.sh
sh /data/server/oracle/product/12/db_1/root.sh

4.7 Oracle ユーザーの構成

oracle ユーザーに切り替え、ユーザー編集変数ファイルを開いて編集します

su - oracle
vim ~/.bash_profile

必要に応じて次の内容を追加します

export ORACLE_BASE=/data/server/oracle
export ORACLE_SID=orcl
export ROACLE_PID=oral12
#export NLS_LANG=AMERICAN_AMERICA.AL32UTF8
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib
export ORACLE_HOME=/data/server/oracle/product/12/db_1
export PATH=$PATH:$ORACLE_HOME/bin
export LANG="zh_CN.UTF-8"
export NLS_LANG="SIMPLIFIED CHINESE_CHINA.AL32UTF8"
export NLS_DATE_FORMAT='yyyy-mm-dd hh24:mi:ss'

設定を有効にする

source ~/.bash_profile

監視を構成する

netca /silent /responsefile /data/file/oracle/database/etc/netca.rsp

監視を開始する

lsnrctl start

サイレントライブラリファイルを変更する

vim /data/file/oracle/database/etc/dbca.rsp

ファイルの内容を以下のように修正します(実際の状況に合わせて修正します)

responseFileVersion=/data/server/oracle/product/12/db_1/assistants/rspfmt_dbca_response_schema_v12.2.0
gdbName=orcl
sid=orcl
databaseConfigType=SI  
createAsContainerDatabase=true  
numberOfPDBs=1  
pdbName=orclpdb  
templateName=/data/server/oracle/product/12/db_1/assistants/dbca/templates/General_Purpose.dbc
emExpressPort=5500
omsPort=0
characterSet=AL32UTF8
listeners=LISTENER
memoryPercentage=40
automaticMemoryManagement=false
totalMemory=0

サイレントライブラリ構築を実行する

dbca -silent -createDatabase  -responseFile  /data/file/oracle/database/etc/dbca.rsp

この時点でデータベースは正常にインストールされています

4.8 インスタンスの起動

sqlplus / as sysdba
SQL>startup

5. データベースの起動と停止

sysdba および sysoper システム権限を持つユーザーのみがデータベースを起動およびシャットダウンできます。
データベースを起動する前に、リスナーを起動する必要があります。そうしないと、コマンド モードを使用してデータベースの起動と終了を含むデータベースを管理できなくなります。
データベースは正常に実行されていますが、リスナーが開始されていないとクライアントはデータベースに接続できません。

5.1スタート

Oracle データベースの完全な起動プロセスには、次の 3 つの手順が含まれます:
簡単に言えば、インスタンスの起動 –> データベースのロード –> データベースを開く
具体的な手順:
1. データベースに対応するインスタンスを作成して起動します
インスタンスが起動されると、そのインスタンスに対して一連のバックグラウンドプロセスやサービスプロセスが作成され、メモリ上にSGA領域などのメモリ構造が作成されます。インスタンスの起動時に使用されるのは初期化パラメータ ファイルのみであり、データベースが存在するかどうかはインスタンスの起動には影響しません。初期化パラメータが正しく設定されていない場合、インスタンスは起動に失敗します。
2. インスタンスのデータベースをロードします。
データベースをロードするとき、インスタンスはデータベースの制御ファイルを開き、データベース名、データ ファイルの場所と名前などのデータベースの物理構造に関する情報を制御ファイルから取得します。データベースを開く準備をします。制御ファイルが破損している場合、インスタンスはデータベースをロードできません。データベースのロード段階では、インスタンスはデータベースの物理ファイル (データ ファイルや REDO ログ ファイル) を開きません。
3. データベースを開くように設定します。
データベースを開くと、インスタンスはオンラインのすべてのデータファイルと REDO ログ ファイルを開きます。制御ファイル内のデータ ファイルまたは REDO ログ ファイルを正常に開くことができない場合、データベースはエラー メッセージを返すため、この時点でデータベースのリカバリが必要になります。
データベースがオープンするように設定されて初めて、データベースは通常の状態になり、この時点では一般ユーザーがデータベースにアクセスできるようになります。多くの場合、データベースの起動時に上記 3 つのステップが直接完了するのではなく、段階的に完了し、その後必要な管理操作が実行され、最終的にデータベースは通常の稼働状態になります。したがって、データベースのメンテナンス操作に応じて、さまざまな起動モードが存在します。
Oracle データベース起動プロセスのさまざまな段階では、さまざまなニーズに応じてデータベース上でさまざまなメンテナンス操作を実行できるため、データベースを起動するにはさまざまなモードが必要です。

各種モードの詳細説明:
1. NoMount モード(データベースをロードせずにインスタンスを起動する)
コマンド: start nomount
説明: この起動モードはインスタンスの作成のみを行い、データベースはロードしません。Oracle はインスタンスのさまざまなメモリ構造とサービス プロセスのみを作成します。インスタンスでは、データ ファイルは開かれません。NoMount モードでは、V PARAMETER、V PARAMETER、V など、 SGA 領域に関連するデータ ディクショナリ ビューのみにアクセスできます。パラメータV SGA 、 Vプロセスおよび VプロセスおよびVPROCESSV SESSION など、これらのビューの情報は SGA 領域から取得され、データベースとは関係ありません。非インストール起動では、このメソッドを実行できます: 制御ファイルの再構築、データベースの再構築、init.ora ファイルの読み取り、インスタンスの起動、つまり SGA とバックグラウンド プロセスの起動。この種類の起動には init のみが必要です。 .ora ファイル。
モードの目的:
(1) 新しいデータベースを作成します;
(2) 制御ファイルを再構築します。

2. マウント モード(データベースをロードしますが、データベースはオープンしません)
コマンド:startup mount
説明: この起動モードは、インスタンスのデータベースをロードしますが、データベースは閉じたままにします。データベースをロードする際にはデータベース制御ファイルを開く必要がありますが、データファイルやREDOログファイルの読み書きができないため、ユーザーはデータベースを操作できません。マウント モードでは、V THREAD、V THREAD、Vなど、制御ファイルに関連するデータ ディクショナリ ビューのみにアクセスできます。スレッドVコントロールファイル、Vデータベース、VデータベースVDATAFILE V $ LOGFILE など、これらのビューは制御ファイルから取得ます
モードの目的:
(1) データ ファイルの名前変更、
(2) REDO ログ ファイルの追加、削除、または名前変更、
(3) 完全なデータベース リカバリ操作の実行、
(4) データベースのアーカイブ モードの変更。

3. オープンモード(通常はデータベースをオープンします)
コマンド:startup [open]
説明:通常、データベースを起動するには 3 つの手順に従います。
モードの使用法: 通常、アプリケーション開発のみを行うなど、データベースのメンテナンスは行わず、このモードのみを使用します。

4. 強制起動モード
コマンド:startupforce
目的と説明:以前のモードを使用してデータベースを正常に起動できない場合に、強制起動モードを試すことができます。
Alter Database ステートメントを使用すると、起動モードを切り替えることもできます。さらに、制限/非制限ポンピング状態、読み取り専用など、さまざまな操作に対してデータベースに異なる状態を設定することもできます。

起動モードを切り替えるには、Alter Database ステートメントを使用します。
(1) NoMount モードから Mount モードへの切り替え(マウントからノーマウントへの切り替えなし):
コマンド: ALTER DATABASE MOUNT;
(2) データベース状態がクローズされたら、オープン モードへ切り替えます。
コマンド: ALTER DATABASE OPEN;
(3) In Inオープン モードでは、データベースを非制限状態と制限状態に設定することも選択できます。
コマンド:
オープン モードを開始するときに、制限キーワードを追加します:startupstrict 制限
状態の設定または解除:alter systemenable\disablelimited session;
説明:
非制限状態は、アプリケーション開発に通常使用される状態です。
制限状態。開かれたデータベースが制限状態に設定されている場合、セッションの作成および制限セッションのシステム権限を持つユーザー、または SYSDBA および SYSPORE システム権限を持つユーザーのみがデータベースに接続できます。ただし、制限状態に入った後も、システム内にアクティブな通常のユーザー セッションがまだ存在する可能性があります。
制限ステータスの用途:
(1) データのインポートまたはエクスポート操作を実行する、
(2) 一般ユーザーによるデータベースへのアクセスを一時的に拒否する、
(3) データベースの移行またはアップグレード操作を実行する。
(4) 読み取り専用状態
読み取り専用コマンドの設定: alter database open readonly;
読み取り専用コマンドの解除: alter database open read write;
目的と説明: 通常開いているデータベースが読み取り専用ステータスに設定されている場合、ユーザーはデータのクエリのみが可能ですが、データベース オブジェクトをいかなる方法でも変更することはできません。読取り専用状態では、データ・ファイルおよびREDOログ・ファイルの内容が変更されないことを保証できますが、データ・ファイルおよびREDOログ・ファイルに書き込まない操作は制限されません。

5.2 閉じる

データベースの起動と同様に、データベースとインスタンスのクローズも 3 つのステップに分かれています:データベースのクローズ –> インスタンスからのデータベースのアンロード –> インスタンスの終了
詳細な手順は次のとおりです
(1) データベースを閉じます。Oracle は、REDO ログ キャッシュの内容を REDO ログ ファイルに書き込み、データベース キャッシュ内の変更されたデータをデータ ファイルに書き込み、すべてのデータ ファイルを閉じてやり直します。データベースの制御ファイルは開いたままですが、データベースが閉じられているため、ユーザーはデータベースにアクセスできません。
(2) データベースをアンインストールします。データベースを閉じた後、ルーチンをアンインストールできます。この時点で制御ファイルは閉じられますが、ルーチンはまだ存在します。
(3) ルーチンを終了すると、プロセスが終了し、ルーチンに割り当てられていたメモリ sga 領域が回復されます。

1.Normal(通常のシャットダウンモード)
コマンド:shutdownnormal
説明:通常の方法でデータをクローズする場合、Oracle は次の操作を実行します。
(1) ユーザーが新しい接続を確立できないようにします。
(2) 現在接続しているすべてのユーザーがアクティブに切断するまで待ちます (この方法では、Oracle は現在のユーザーをすぐに切断せず、これらのユーザーは引き続き関連操作を実行します) (3) すべてのユーザーが切断されたら、すぐにシャットダウンし、システムをアンマウントします
。データベースを削除し、インスタンスを終了します。(したがって、一般に、通常の方法でデータベースを閉じるときは、すべてのオンライン ユーザーにできるだけ早く切断するように通知する必要があります)
2. 即時(即時シャットダウン モード)
コマンド: shutdown immediate
説明:
(1) ユーザーが接続を確立できないようにします。新しい接続を確立し、現在接続しているユーザーが新しいトランザクションを開始できないようにします。
(2) Oracle は、オンライン ユーザーが積極的に切断するのを待たず、ユーザーの現在のトランザクションを強制的に終了し、コミットされていないトランザクションをロールバックします。(コミットされていないトランザクションが多すぎる場合、この方法ではトランザクションの終了とロールバックに時間がかかります)
(3) 直接シャットダウンし、データベースをアンロードし、インスタンスを終了します。
3. Transactional(トランザクションシャットダウン方式)
コマンド:shutdowntransactional
説明:通常シャットダウン方式と即時シャットダウン方式の中間の方式であり、応答時間が速く、より適切な処理が行われます。実行プロセスは次のとおりです。
(1) ユーザーが新しい接続を確立できないようにし、現在接続しているユーザーが新しいトランザクションを開始できないようにします。
(2) コミットされていないアクティブなトランザクションがすべてコミットされるまで待ち、その後すぐにユーザーを切断します。
(3) データベースを直接閉じてアンロードし、インスタンスを終了します。
4. アボート(終了シャットダウン方法)
コマンド:shutdown abort
説明:大まかなシャットダウン方法であり、上記 3 つの方法で終了できない場合に、終了方法を使用してデータベースを閉じることができます。ただし、この方法でデータベースを閉じるとデータ情報の一部が失われるため、インスタンスが再起動されてデータベースが開かれると、バックグラウンド プロセス SMON によってインスタンスの回復操作が実行されます。一般に、この方法を使用してデータベースを閉じることは避けてください。実行プロセスは次のとおりです。
(1) ユーザーが新しい接続を確立できないようにし、現在接続しているユーザーが新しいトランザクションを開始できないようにします。
(2) 実行中のSQL文を即時に終了します。
(3) コミットされていないトランザクションは取り消されません。
(4) すべてのユーザーを直接切断し、データベースを閉じてアンインストールし、インスタンスを終了します。

6、sqlplusの改善

デフォルトの sqlplus を使用していると、使いにくいことがわかりました。その最たる例は、history コマンドに含まれるバックスペース キーと上下キーが使用できないことです。バックスペース キーの改善は次のとおりです。鍵。

Oracleユーザーに切り替える

su - oracle

ユーザー環境変数構成ファイルを開いて編集します。

vim ~/.bash_profile

ファイルの最後に次のコードを追加し、保存して終了します。

stty erase ^h

設定ファイルを有効にする

source ~/.bash_profile

この時点で、sqlplus テストに入り、バックスペース キーがすでに使用可能であることがわかります。

7、navicatリモートデータベース

通常、データベースはリモート サーバーにインストールされ、ローカル管理ソフトウェアに接続されます。この時点でデータベースを構成する必要があります。

oracle ユーザーで、listener.ora ファイル (通常はインストール ディレクトリにあります) を開いて編集します。

su oracle
vim /data/server/oracle/product/12/db_1/network/admin/listener.ora

# 然后将其中的HOST改为服务器的IP(这里为了保留之前的配置所以直接在文件后面复制了上面的配置然后作修改)
LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.3.245)(PORT = 1521))
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
    )
  )

tnsnames.ora ファイルを開いて編集します。

su oracle
vim /data/server/oracle/product/12/db_1/network/admin/tnsnames.ora

LISTENER_ORCL =
  (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.3.245)(PORT = 1521))

ORCL =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.3.245)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl)
    )
  )

次にOracleを再起動します

lsnrctl restart

おすすめ

転載: blog.csdn.net/qq_38478995/article/details/131334560