日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > centos >内容正文

centos

docker 安装 oracle12,Centos7下利用docker安装oracle12c

發布時間:2024/7/23 centos 77 豆豆
生活随笔 收集整理的這篇文章主要介紹了 docker 安装 oracle12,Centos7下利用docker安装oracle12c 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

實戰在windows局域網下可以進行連接,并執行sql語句:

執行結果

具體的步驟如下:

1、在centos7下安裝docker

[root@localhost /]# yum install docker

2、啟動docker

[root@localhost /]# systemctl start docker.service

3、查找docker鏡像

可以在dockerhub中查找oracle12c的鏡像,一般訪問dockerhub出現無法連接的時候可以多刷新瀏覽器試一下。

也可以使用docker search oracle的命令搜索鏡像

docker hub鏡像

docker search命令

4、下載docker鏡像

這次安裝使用的是sath89/oracle-12c鏡像,獲取命令如下:

[root@localhost data_temp]# docker pull docker.io/sath89/oracle-12c

等待下載完成之后可以使用docker images查看鏡像是否安裝成功。

5、運行docker鏡像

1)鏡像下載完成后,創建容器:

mkdir /usr/local/data_temp

chmod 777 /usr/local/data_temp

創建一個文件目錄,用于掛載到容器內,做oracle數據備份時數據存放的位置,保證備份數據不丟失。

docker run -d --name oracle12c -p 1521:1521 -v /usr/local/data_temp:/home/oracle/data_temp sath89/oracle-12c

其中,oracle12c是名稱,-p是端口映射,-v是將宿主機的/usr/local/data_temp 目錄映射到容器內的 /home/oracle/data_temp內。

2)進入容器,

docker ps? ? ? ? ? ? ## 查看容器的id號,復制一下

docker exec -it xxxxxxxx /bin/bash? ? ? ? ? ? ? ## xxxxxxx就是上一部查看的id號

3) 查看oracle狀態,修改system用戶密碼。

source ~/.bash_profile? ? ? ? ? ? ? ? ? ? ? ? ? ## 加載一下用戶環境變量,進入容器后,自動是oracle用戶

sqlplus /nolog? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ## 使用sqlplus 工具,進去命令行

SQL> connect /as system? ? ? ? ? ? ? ? ? ? ? ? ?## 使用system 連接oracle,密碼oracle

SQL> select status from v$instance;? ? ? ? ? ? ## 查看oracle現在的狀態 ,狀態為 OPEN 則正常,表示已開啟狀態。

SQL> alter user system identified by oracle;? ? ## 修改用戶 system 的密碼為 oracle ,可以自定義

4). 然后就是創建表空間,創建用戶,并授權。

創建表空間核用戶,這個可以使用工具連接到oracle數據庫上進行創建,也可以手動命令行進行創建。注意依然是在sysdba權限下操作,命令如下:

SQL> select name from v$tempfile;? ? ## 查詢臨時表空間的路徑

查詢臨時表空間

## 下面這句,創建表空間,名:test ,數據文件路徑復制臨時表空間數據文件路徑然后改一下文件名就行了,大小:1G, 自動增長:50M 。 參數根據自己的需求自行修改

SQL> create tablespace test datafile '/u01/app/oracle/oradata/xe/test.dbf' size 1G reuse autoextend on next 50M maxsize unlimited default storage(initial 128k next 128k minextents 2 maxextents unlimited);

SQL> select tablespace_name from dba_tablespaces? ? ## 查看所有表空間,看看是否有剛才創建的

SQL> create user test identified by testpasswd default tablespace TEST temporary tablespace TEMP;? ? ## 創建用戶,test01,密碼:testpass,設置默認表空間為剛才創建的 test, 臨時表空間設為默認的 TEMP。

SQL> select username from dba_users? ? ## 查看用戶名,可以看到是否有剛才我們創建的用戶名

SQL> grant connect,dba,exp_full_database,imp_full_database to test01 with admin option;? ## 授權用戶 test01,擁有連接,管理員,導入,導出權限,并可以傳遞權限。(根據需求自己定義權限)

8. 導入數據,導出數據。

還記得之前自定義的directory文件目錄嗎?第6步中設置的。 只需要將需要導入的數據文件,放入這個目錄。就可以使用 impdp命令導入數據了。用expdp命令導出的數據,也可以設置放在此文件目錄中,由于這個目錄是最初從宿主機上掛載來的,所以,這些導入導出的數據,將不會隨容器關閉而丟失,可以持久化保存數據。

導入,導出命令如下:? ?注意,這里退出sqlplus,回到oracle用戶下,操作:

## 導入數據,登陸用戶為剛才創建的用戶,實例為鏡像的實例xe,數據文件為第6步創建的DATA_TEMP,導入文件為BPM.EXPDP,用戶為test01到test01,這些需要自行修改,導入的用戶和當時導出的用戶最好保持一直。

impdp test/test@xe?table_exists_action=replace? dumpfile=BPM.EXPDP logfile=BPM_20190302.log REMAP_SCHEMA=test:test schemas=test

## 導出數據,導出文件名為:BPM.EXPDP, 路徑為: DATA_TEMP, 用戶為test01

expdp test/test@xe dumpfile=BPM.EXPDP? schemas=test reuse_dumpfiles=y? version=12.1.0.2.0

參考:https://blog.csdn.net/weixin_41004350/article/details/79168739

創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎

總結

以上是生活随笔為你收集整理的docker 安装 oracle12,Centos7下利用docker安装oracle12c的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。