centos dockerベースoracleインストール

4927 ワード

本稿では、centosサーバにdockerをインストールすることについて説明し、dockerベースのoracleをインストールするには、次の3つの部分に分けます.
一、作成目的二、インストールdocker三、dockerベースoracle
一、作成目的:linuxはサイレント方式でoracleをインストールする構成が面倒で、少し気にしないと成功しないのでdocker方式でoraleをインストールします.
二、docker 1のインストール、dockerはcentosシステムのカーネルバージョンが3.10より高いことを要求し、このページの前提条件を確認してcentosバージョンがdockerをサポートしているかどうかを検証する.コマンド:
$ uname –r

2、root権限を使用してcentosにログインし、yumパッケージが最新に更新されることを確認します.(サーバにネットワークが必要)コマンドは次のとおりです.
$ sudo yum update

3、古いバージョンのアンインストール(古いバージョンがインストールされている場合)コマンドは次のとおりです.
$ sudo yum remove docker  docker-common docker-selinux docker-engine

4、必要なパッケージをインストールし、yum-utilはyum-config-manager機能を提供し、他の2つはdevicemapper駆動依存である.コマンド:
$ sudo yum install -y yum-utils device-mapper-persistent-data lvm2

5、yumソースを設定します.コマンド:
$ sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

拡張:(海外ミラーは一般的にアクセスしにくいので、アリクラウドミラーの構成をお勧めします.yum-config-manager--add-repohttp://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo)
6、すべての倉庫のすべてのdockerバージョンを表示し、特定のバージョンのインストールを選択します.コマンド:
$ yum list docker-ce --showduplicates | sort -r

7、dockerをインストールします.コマンド:
$ sudo yum install docker-ce  #  repo      stable  ,            17.12.0
$ sudo yum install   #   :sudo yum install docker-ce-17.12.0.ce

8、起動して起動に参加する.コマンド:
$ sudo systemctl start docker
$ sudo systemctl enable docker

9、dockerのインストールが成功したかどうか(clientとserviceの2つの部分がdockerのインストール起動が成功したことを示している)、コマンドは以下の通りです.
$ docker version

(以下にclientとserverの2つのリストが表示されます)
質問:インストール時にエラーが発生した場合は、conflicts with file from package docker-common-2:1.12.6-68を意味します.gitec8512b.el7.centos.x86_64
(1)古いバージョンのパッケージをアンインストールする
$ sudo yum erase docker-common-2:1.12.6-68.gitec8512b.el7.centos.x86_64

(2)dockerの再インストール
$ sudo yum install docker-ce

三、dockerに基づいてoracleをインストールする(rootユーザーを使用する)
1、ミラーを引き出す-命令を実行する(サーバーはネットワークに接続する必要があり、ダウンロード時間が長い)
$ docker pull registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g

2、ダウンロードが完了したら、ミラーを表示する
$ docker images

次のようになります.registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11 gは引いて取ったことを説明します
3、コンテナの作成
$ docker run -d -p 1521:1521 --name oracle11g registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g

ここのoracle 11 gはこのサービスのためにつけた名前で、后でここで言います.命令の后のアドレスは必ずダウンロードしたミラーのアドレス、つまりミラーの名前を引いてください.そうしないと、名前がすでに存在するなどの问题が発生します.作成に成功するとコンテナidが返されます
4、起動容器
$ docker start oracle11g

5、ミラーに入って構成する(1)ミラーに入る
$ docker exec -it oracle11g bash

注意:この時、あなたはあなたが入ったことに気づきます.oracle@3212類似のディレクトリの下(2)でソフト接続を行う
 $ sqlplus /nolog

bash:sqlplus:command not foundが表示される場合
(3)ではrootユーザの下に切り替え、su rootパスワードは:helowin(このパスワードは自分のrootユーザのパスワードではなくhelowinであり、dockerコンテナからdockerのroot下に切り替えたと推測する)
(4)viコマンドを使用してprofileファイル構成oracle環境変数を編集する(最後に次の3つを加えて保存して終了する)
	export ORACLE_HOME=/home/oracle/app/oracle/product/11.2.0/dbhome_2

	export ORACLE_SID=helowin

	export PATH=$ORACLE_HOME/bin:$PATH

(5)ソフト接続の作成
$ ln -s $ORACLE_HOME/bin/sqlplus /usr/bin

(6)oracleユーザーに切り替えるここでは、必ず真ん中のメモを書きます-必要です.そうしないと、ソフト接続が無効になります.
$ su - oracle 

(7)sqlplusにログインしsys,systemユーザパスワードを変更する
  $ sqlplus /nolog

sqlplusに入ったら、次のコマンドで接続します.
   conn /as sysdba

次にoracleの文を使用して操作できます.
alter user system identified by system;
alter user sys identified by sys;(  system sys   )

注意:パスワードの変更が実行されたときに表示されます:database not open:alter database open;注意:ORA-01507:database not mountedも提示されるかもしれませんが、alter database mount;を実行してalter database open;を実行するとデータベースパスワードの変更コマンドを実行できます.
変更後の実行:ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;exitはSQLソフト接続を終了します
(8)pl/sqlで接続
ポートを1521にマッピングする前に、tnsnamesを構成する必要があると推定する.ora、まず見てみましょう.だめなら、次のを使います.
docker_oracle11 =
(DESCRIPTION =

   (ADDRESS_LIST =
     (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.211.135)(PORT =1521))
	)
   (CONNECT_DATA =
     (SERVICE_NAME = orcl)
	)
  )

(9)ログイン12514のエラーが発生した場合:oracleのlsnrctlサービスを表示し、lsnrctl statusコマンドで表示すると、以下に2つのサービスがあり、対応するサービスが異なる場合は、いずれかを選択してtnsnamesを変更する.oraのサービス_name=helowinXDB(これは別のサービス名です)
最後の最後:サーバーを再起動した場合、Rootユーザーでログインして対応するコンテナを起動し、設定する必要があります.手順は以下の通りです.1:起動(oracle 11 gは再起動の作成時にoracle 11 gと名前が付けられたためです)
$ docker start oracle11g

2:ミラーに入って構成する
$ docker exec -it oracle11g bash