ドッカーはオラクルをインストールします

バックグラウンド

Linux にオラクルをインストールするのは非常に面倒で、誰もがさまざまな落とし穴に遭遇すると思います。一度インストールしておけば、今後様々なプラットフォームに移植するためにイメージを直接エクスポートしておくのも便利なので、dockerでインストールすることを選択

OracleLinux

Oracle Enterprise Linux (略して OEL) の正式名称である Oracle Linux は、2006 年初頭に Oracle によってリリースされた最初のバージョンです。これは Linux ディストリビューションの 1 つであり、Oracle ソフトウェアとハ​​ードウェアの優れたサポートで知られています。

プル画像

DockerHub で Oracle を検索して、Oracle の公式イメージを見つけます。アドレス: https://hub.docker.com/
ここに画像の説明を挿入

docker pull oraclelinux最新のタグがないため、コマンドを使用してイメージをプルすることはできないことに注意してください。したがって、バージョン番号を手動で指定することしかできません.
たとえば、公式イメージをdocker pull oraclelinux
ここに画像の説明を挿入
使用すると非常に遅いため、Aliイメージを使用できますdocker pull registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g

It can be found on dockerHub (the second one). この構成を参照して、イメージ
ここに画像の説明を挿入ここに画像の説明を挿入docker images表示し、ダウンロードが完了したことを確認できます。
ここに画像の説明を挿入

コンテナを起動する

  1. デフォルトでコンテナを起動する方法
    docker run -d -it -p 1521:1521 --name oracle11g --restart=always registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g
  2. 永続的な起動方法
    docker run -d -it -p 1521:1521 --name oracle --restart=always --mount source=oracle_vol,target=/home/oracle/app/oracle/oradata registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g

開始されたスレッドを表示する 実行ステータスnetstat -tulnp
ここに画像の説明を挿入
を表示するdocker ps -a
ここに画像の説明を挿入

コンテナ環境の構成

コンテナーに入りdocker exec -it oracle11g bash
ここに画像の説明を挿入
、root ユーザーに切り替えますsu root。パスワードはhelowin
ここに画像の説明を挿入
docker コンテナー構成環境変数/etc/profileで、コンテナーはこのファイルを開始しません。
環境変数の構成は、ファイルの下に設定できる /home/oracle/.bashrcため、ソフトln -s $ORACLE_HOME/bin/sqlplus /usr/bin
ここに画像の説明を挿入
リンクvi /home/oracle/.bashrc、ファイルの最後に次のコマンドを追加します.

export ORACLE_HOME=/home/oracle/app/oracle/product/11.2.0/dbhome_2
export ORACLE_SID=helowin
export PATH=$ORACLE_HOME/bin:$PATH

wq保存して終了。次に、環境変数source /home/oracle/.bashrcを更新して有効にするために

オラクルのコマンドラインを入力してください

sqlplus /nologoracleコマンドラインに入り
ここに画像の説明を挿入
「オペレーティング・システム認証」方式を使用してoracleにログインします。conn / as sysdba
デフォルトのルート・ユーザーを直接使用してログインすると、ログインの失敗が報告されます。ここではsu - oracle、コマンド
ここに画像の説明を挿入

ORA-12514、TNS: リスナーは現在、接続記述子でリクエストされたサービスを認識していません

ここに画像の説明を挿入このエラーは、間違ったデータベース名が原因です

su - oracle
sqlplus /nolog
conn / as sysdba
select instance_name from v$instance;
show user;

上記のコマンドを使用して、利用可能なすべての「データベース名」と「ユーザー名」をチェックアウトします
ここに画像の説明を挿入

このアリの画像では、すべてのパスワードが統一されていますhelowin

システム ユーザーには DBA 権限がありますが、SYSDBA 権限はありません。通常、このアカウントはデータベースを管理するために使用されます。
sys ユーザーは、Oracle データベースで最高の権限を持つアカウントであり、「SYSDBA」および「SYSOPER」権限を持ち、通常、外部からのログインは許可されません。

ここに画像の説明を挿入

ファイアウォールを構成する

外部データベース管理ツールが接続できるように、ファイアウォールはポート 1521 を許可する必要があります。

# 打开防火墙
systemctl start firewalld
# 查询端口状态
firewall-cmd --query-port=1521/tcp
# 永久性开放端口
firewall-cmd --permanent --zone=public --add-port=1521/tcp
# 重启防火墙
firewall-cmd --reload
firewall-cmd --query-port=1521/tcp

ここに画像の説明を挿入

おすすめ

転載: blog.csdn.net/chy555chy/article/details/124345973