banner
keney

keney

remain optimistic
twitter

dockerでOracleコンテナをインストールする

docker を使用して手動でさまざまなコンテナ(サービス)をインストールする

イメージ検索方法:https://hub.docker.com/

Oracle のインストール#

参考 1:https://blog.csdn.net/javaboyweng/article/details/125486242

参考 2:Docker-14:Docker で Oracle11g をインストール (いいね)

参考 3:[docker で Oracle データベースをインストール - テンセントクラウド開発者コミュニティ - テンセントクラウド (tencent.com)] (いいね)

イメージ:https://hub.docker.com/r/akaiot/oracle_11g

インストールビデオチュートリアル:参考

ここではクラウドサーバーを使用して、docker を通じて Oracle コンテナをインストールします。

サーバーは 2 コア 4G を使用しています。

操作#

前提知識として docker の一般的なコマンドに慣れている必要があります。

イメージをプルする

docker pull registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g

コンテナを起動する:

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

--mount source=oracle_vol,

target=/home/oracle/app/oracle/oradata 、サーバーのローカルディレクトリで、カスタマイズ可能です。例えば:/root/docker-data/oracle/oracledata

registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g

ファイルを変更するために、まずコンテナ内に入って、以下の操作を実行します:

docker exec -it oracle /bin/bash 
# rootユーザーに切り替え
su root

次にパスワードを入力します

#パスワード:
helowin 

/etc/profileファイルを変更し、ORACLE_HOME と ORACLE_SID を設定してから、適用します。
入力:

vi /etc/profile
#設定内容
export ORACLE_HOME=/home/oracle/app/oracle/product/11.2.0/dbhome_2 
export ORACLE_SID=helowin
export PATH=$ORACLE_HOME/bin:$PATH

--restartは docker 再起動時にコンテナが自動的に再起動することを示します

--mountはホスト上のパスをコンテナにマウントすることを示します

export ORACLE_SID=helowin 、ORACLE_SID = カスタム sid、後で接続時に使用されます

次に設定ファイルを適用します:

#設定ファイルを適用
source /etc/profile

シンボリックリンクを作成します。

ln -s $ORACLE_HOME/bin/sqlplus /usr/bin

sqlplus にログインします。

# oracleユーザーに切り替え
su oracle
# クライアントプロセスを起動しました
sqlplus /nolog
# 接続身分
connect / as sysdba
# systemアカウントのパスワードを変更
alter user system identified by パスワード;
# sysアカウントのパスワードを変更
alter user sys identified by パスワード;
# パスワードを無期限に設定:
alter profile default limit PASSWORD_LIFE_TIME UNLIMITED;

ユーザーを作成します(自分で決めてください)。

#ユーザーを作成
create user jiefei identified by ユーザー名;
#ユーザーに権限を付与
grant connect,resource,dba to ユーザー名;

接続回数も変更します:

alter system set processes=1000 scope=spfile;

もう一つ、上記の情報を変更した後、データベースを再起動する必要があります;

conn /as sysdba

データベースサービスを停止します:

shutdown immediate;

データベースサービスを起動します:

startup open;

シンボリックリンクを退出します:

exit

ツール接続#

Navicat Premium16 ツールを使用して Oracle データベースに接続してテストします。

ツールダウンロード:こちらを参考

可能な問題#

パスワードを変更する際に「database not open」というエラーが発生した場合

解決策:

入力:

alter database mount;

入力:

alter database open;

これでデータベースパスワードを変更するコマンドが実行できるようになります。

変更後、入力:

ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;

テーブルをリフレッシュします。

exit は sql を終了し、シンボリックリンクを終了します。

読み込み中...
文章は、創作者によって署名され、ブロックチェーンに安全に保存されています。