新聞中心
Oracle數(shù)據(jù)庫是業(yè)界著名的關系型數(shù)據(jù)庫管理系統(tǒng),被廣泛應用于企業(yè)數(shù)據(jù)存儲和管理中。在企業(yè)中,通常需要在不同的環(huán)境中部署多個數(shù)據(jù)庫,如生產環(huán)境、測試環(huán)境、開發(fā)環(huán)境等。在這種情況下,為了避免重復操作和減少出錯的可能,可以使用克隆技術將一個數(shù)據(jù)庫在另一個環(huán)境中快速地復制和部署。本文將介紹。

創(chuàng)新互聯(lián)建站專注于瓊海網(wǎng)站建設服務及定制,我們擁有豐富的企業(yè)做網(wǎng)站經驗。 熱誠為您提供瓊海營銷型網(wǎng)站建設,瓊海網(wǎng)站制作、瓊海網(wǎng)頁設計、瓊海網(wǎng)站官網(wǎng)定制、重慶小程序開發(fā)公司服務,打造瓊海網(wǎng)絡公司原創(chuàng)品牌,更為您提供瓊海網(wǎng)站排名全網(wǎng)營銷落地服務。
一、備份源數(shù)據(jù)庫
在克隆前,必須確保源數(shù)據(jù)庫沒有損壞和故障,否則會影響克隆的質量和效率。在備份過程中,可以采用Oracle Data Pump或者快照技術來進行。首先介紹一下Data Pump備份的步驟:
1.使用命令行工具SQL*Plus連接到源數(shù)據(jù)庫。
2.使用以下命令創(chuàng)建一個目錄:
CREATE DIRECTORY backup_dir AS ‘/u01/backup’;
3.使用以下命令創(chuàng)建一個備份文件:
expdp system/123456 directory=backup_dir dumpfile=source_db.dmp
其中,system/123456是一個具有dba權限的賬號和密碼,backup_dir是之前創(chuàng)建的目錄,source_db.dmp是備份文件的名稱。
4.等待備份完成,可以通過以下語句查詢備份狀態(tài):
SELECT * FROM dba_datapump_jobs;
當STATE列為COMPLETED時,備份已經成功。
5.復制備份文件到克隆數(shù)據(jù)庫所在服務器的相應目錄下,如/u01/clone。
二、創(chuàng)建克隆數(shù)據(jù)庫的初始配置文件
在克隆數(shù)據(jù)庫之前,必須先創(chuàng)建一個初始配置文件,該配置文件包含了克隆數(shù)據(jù)庫在安裝和配置過程中所需的基本信息。創(chuàng)建配置文件需要運行以下命令:
$ORACLE_HOME/perl/bin/perl $ORACLE_HOME/clone/bin/clone.pl ORACLE_HOME=/u01/app/oracle/product/11.2.0.4 \
RESPONSE_FILE=/u01/clone/clone.rsp \
CLONING_ORACLE_SID=clone \
ORACLE_BASE=/u01/app/oracle \
INVENTORY_LOCATION=/u01/app/oraInventory
其中,ORACLE_HOME是源數(shù)據(jù)庫的安裝目錄,RESPONSE_FILE是配置文件的完整路徑,CLONING_ORACLE_SID是克隆數(shù)據(jù)庫的SID名稱,ORACLE_BASE是克隆數(shù)據(jù)庫的安裝目錄,INVENTORY_LOCATION是Oracle Inventory目錄的位置。
三、啟動克隆數(shù)據(jù)庫
在創(chuàng)建初始配置文件后,可以使用以下命令來啟動克隆數(shù)據(jù)庫:
$ORACLE_HOME/bin/dbca -silent -createDatabase -templateName General_Purpose.dbc \
-gdbName=clone -sysPassword=123456 -systemPassword=123456 -characterSet=AL32UTF8 \
-datafileDestination=/u01/data \
-redoLogFileSize=500 \
-emConfiguration LOCAL
其中,-gdbName指定了克隆數(shù)據(jù)庫的名稱,-sysPassword和-systemPassword指定了sys和system賬號的密碼,-characterSet指定了字符集,-datafileDestination指定了數(shù)據(jù)文件存放的位置,-redoLogFileSize指定了重做日志文件的大小,-emConfiguration指定了是否啟用Enterprise Manager。
四、導入備份數(shù)據(jù)
在克隆數(shù)據(jù)庫啟動后,需要將備份數(shù)據(jù)導入到克隆數(shù)據(jù)庫中,可以使用以下命令:
impdp system/123456 directory=backup_dir dumpfile=source_db.dmp \
remap_schema=source_schema:clone_schema \
remap_tablespace=source_ts:clone_ts
其中,system/123456是在源數(shù)據(jù)庫中創(chuàng)建備份文件時所使用的賬號和密碼,backup_dir是創(chuàng)建備份目錄時所使用的目錄名稱,source_db.dmp是備份文件的名稱,source_schema和source_ts是源數(shù)據(jù)庫中的用戶名和表空間名稱,clone_schema和clone_ts是克隆數(shù)據(jù)庫中的用戶名和表空間名稱。
五、啟動克隆數(shù)據(jù)庫并驗證
在導入備份數(shù)據(jù)后,可以使用以下命令啟動克隆數(shù)據(jù)庫:
$ORACLE_HOME/bin/sqlplus / as sysdba
SQL> startup
然后,可以使用Oracle SQL客戶端工具連接到克隆數(shù)據(jù)庫,并進行驗證,例如:
SQL> SELECT COUNT(*) FROM clone_schema.table_name;
如果返回的數(shù)據(jù)條數(shù)和源數(shù)據(jù)庫中的相同,則說明克隆數(shù)據(jù)庫已經成功完成。
:
通過以上步驟,可以在Linux環(huán)境下快速地克隆Oracle數(shù)據(jù)庫,從而減少了重復操作和減小了出錯的風險。備份數(shù)據(jù)和創(chuàng)建配置文件是克隆過程中必不可少的步驟,其中備份數(shù)據(jù)部分可以使用其他備份技術或者工具,如RMAN等。在實際應用中,還需要注意克隆數(shù)據(jù)庫的硬件和軟件要求,包括操作系統(tǒng)版本、硬盤容量、內存大小等。在克隆數(shù)據(jù)庫完成后,可以進行一些必要的配置和優(yōu)化工作,以達到更佳的性能和安全性。
相關問題拓展閱讀:
- 在linux上安裝oracle11G必須在圖形界面才能安裝嗎
在linux上安裝oracle11G必須在圖形界面才能安裝嗎
1、基本配置
1.1)系統(tǒng)軟件包安裝
yum -y install binutils compat-libstdc++-33 compat-libstdc++-33.i686 elfutils-libelf elfutils-libelf-devel gcc gcc-c++ glibc glibc.i686 glibc-common glibc-devel glibc-devel.i686 glibc-headers ksh libaio libaio.i686 libaio-devel libaio-devel.i686 libgcc libgcc.i686 libstdc++ libstdc++.i686 libstdc++-devel make sysstat unixODBC unixODBC-devel
1.2)用戶創(chuàng)建
groupadd oinstall
groupadd dba
useradd -g oinstall -G dba oracle
passwd oracle
1.3)文件配置
1.3.1) 環(huán)境變量
vi ~oracle/.bash_profile
export ORACLE_BASE=/data/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0.4/db_1
export ORACLE_SID=test # 最多 8個字符 ; 操作系統(tǒng)和 oracle實例關聯(lián)的紐帶 ;ORACLE_HOME+ORACLE_SID==>hash==> 共享內存段
export PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin # 將安裝后的 oracle 命令追加到執(zhí)行搜索路徑
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib # 動態(tài)庫的位置
export nls_lang=”SIMPLIFIED CHINESE_CHINA.ZHS16GBK” #客戶端字符集激余設置
# 加載配置 :oracle 用戶注銷重新登錄 或 source .bash_profile
1.3.2) 主機
echo “10.240.1.7 Database-backup” >> /etc/hosts #避免報錯startup noumount時報錯ORA-00000: normal, successful completion
1.3.3) 軟件目錄
mkdir -p /data/app/oracle/product/11.2.0.4/db_1
chown -R oracle:oinstall /data/app
1.3.4) 資源限制
1.3.4,1) vim /etc/sysctl.conf 添加到文件底端
kernel.shmall =
#Total amount of shared memory available(bytes or pages); 頁的數(shù)量 ;*4096/1024/1024/1024=8G; 如果內存大于 8G,必須修改此參數(shù)
kernel.shmmax =
# 要>= 物理內存的一半 Maximum size of shared memory segment(bytes); 建議 >=sga_max_size(oracle申請內存大小 );
# 單個程序內存段更大多少 ;4G 的話分為兩段 mem_seg1 mem_seg2,影響效率 ;
kernel.shmmni = 4096
# Maximum number of shared memory segments system-wide; 頁老鉛蔽的大小 ;
kernel.sem =128
SEMMSL SEMMNS SEMOPM SEMMNI
SEMMSL Maximum number of semaphores per set; 每個信號對象集的更大信號對象數(shù)
SEMMNS Maximum number of semaphores system-wide; 系統(tǒng)范圍內侍州更大信號對象數(shù) ;SEMMNS = SEMMSL*SEMMNI
SEMOPM 每個信號對象支持的更大操作數(shù)
SEMMNI Maximum number of semaphore identifiers; 系統(tǒng)范圍內更大信號對象集數(shù)
fs.file-max #系統(tǒng)中所允許的文件句柄更大數(shù)目
net.ipv4.ip_local_port_range # 應用程序可使用的 IPv4 端口范圍
net.core.rmem_default #套接字接收緩沖區(qū)大小的缺省值
net.core.rmem_max #套接字接收緩沖區(qū)大小的更大值
net.core.wmem_default #套接字發(fā)送緩沖區(qū)大小的缺省值
net.core.wmem_max #套接字發(fā)送緩沖區(qū)大小的更大值
#注釋:OS32bit,oracle 最多申請 1.7G; 應該裝64bitOS
#加載參數(shù) sysctl -p
1.3.4 ,2) /etc/security/limits.conf oracle 在 linux 上操作的limit
# grep -v ‘^#’ /etc/security/limits.conf
oracle soft nproc 2023 #oracle 在 linux上打開 proc 數(shù)量
oracle hard nproc 16384
oracle soft nofile 1024 #oracle 在 linux上打開 file 的數(shù)量
oracle hard nofile 65536
# grep ‘limit’ /etc/pam.d/system-auth
session required pam_limits.so
1.3.4,3) 關閉防火墻、SELINUX
iptables -F
更改 /etc/selinux/config 文件 –>SELINUX=disabled
2、克隆 ORACLE_HOME
2.1)將遠程ORACLE_HOME完全復制到本地
#進入到本地ORACLE_HOME路徑
su – oracle
cd /data/app/oracle/product/11.2.0.4/
#將遠程ORACLE_HOME完全復制到本地
scp -pr :/data/app/oracle/product/11.2.0.4/db_1/ .
2.2)執(zhí)行clone.pl 克隆腳本更改參數(shù)配置(ORACLE_SID、ORACLE_HOME)
$ cd /data/app/oracle/product/11.2.0.4/db_1/clone/bin
$ ls
clone.pl prepare_clone.pl
#注意每個參數(shù)后,等號后不能有空格,否則被識別成無效選項
$ perl clone.pl ORACLE_SID=test ORACLE_BASE=/data/app/oracle ORACLE_HOME=/data/app/oracle/product/11.2.0.4/db_1/ ORACLE_HOME_NAME=OraDb11g_home1
…….最后提示如下信息表示,克隆成功…
The following configuration scripts need to be executed as the “root” user.
/data/app/oracle/product/11.2.0.4/db_1/root.sh
To execute the configuration scripts:
1. Open a terminal window
2. Log in as “root”
3. Run the scripts
The cloning of OraDb11g_home1 was successful.
……………….
二、手動建庫
1、配置參數(shù)文件 (測試環(huán)境簡單參數(shù),若有需求,可補充 )
$ cd $ORACLE_HOME/dbs
$ pwd
/data/app/oracle/product/11.2.0.4/db_1/dbs
$
$ cat inittest.ora
db_name=test
db_files = 80
db_file_multiblock_read_count = 8
log_checkpoint_interval = 10000
processes = 50
parallel_max_servers = 5
log_buffer = 32768
max_dump_file_size =# limit trace file size to 5 Meg each
global_names = TRUE
#control_files = (ora_control1, ora_control2)
sga_max_size=300M
sga_target=300M
*.local_listener='(ADDRESS_LIST=(Address=(Protocol=tcp) (Host=10.240.1.7)(Port=1521)))’ #避免啟動數(shù)據(jù)庫時報錯(ORA-00119、ORAlocal_listener配置無效)
$
2、啟動數(shù)據(jù)庫到nomount
#進入數(shù)據(jù)庫
$sqlplus / as sysdba
#開啟數(shù)據(jù)庫到nomount狀態(tài)
SQL> startup nomount
ORACLE instance started.
Total System Global Areabytes
Fixed Sizebytes
Variable Sizebytes
Database Bufferytes
Redo Bufferytes
SQL>
3、創(chuàng)建數(shù)據(jù)庫,到open狀態(tài) —>前提:mkdir -p /data/app/dbf/;chown -R oracle:oinstall /data/app/dbf/
SQL>CREATE DATABASE test
USER SYS IDENTIFIED BY change_on_install
USER SYSTEM IDENTIFIED BY manager
LOGFILE GROUP 1 ( ‘/data/app/dbf/redo01.log’) SIZE 100M,
GROUP 2 (‘/data/app/dbf/redo02.log’) SIZE 100 M,
GROUP 3 (‘/data/app/dbf/redo03.log’) SIZE 100 M
MAXLOGFILES 5
MAXLOGMEMBERS 5
MAXLOGHISTORY 1
MAXDATAFILES 100
MAXINSTANCES 1
CHARACTER SET ZHS16GBK
NATIONAL CHARACTER SET AL16UTF16
DATAFILE ‘/data/app/dbf/system01.dbf’ SIZE 325M REUSE
EXTENT MANAGEMENT LOCAL
SYSAUX DATAFILE ‘/data/app/dbf/sysaux01.dbf’ SIZE 325 M REUSE
DEFAULT TABLESPACE users datafile ‘/data/app/dbf/users.dbf’ size 50m
DEFAULT TEMPORARY TABLESPACE tempts1
TEMPFILE ‘/data/app/dbf/temp01.dbf’
SIZE 20 M REUSE
UNDO TABLESPACE undotbs
DATAFILE ‘/data/app/dbf/undotbs01.dbf’
SIZE 200 M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED;
Database created.
SQL>
4、確認數(shù)據(jù)庫狀態(tài)
SQL> select status from v$instance;
STATUS
OPEN
SQL>
5、 將DBF 設置自動擴展,避免稍后執(zhí)行腳本加載數(shù)據(jù)字典表/包/scott用戶 時空間不足
alter database datafile 1 autoextend on;
alter database datafile 2 autoextend on;
alter database datafile 3 autoextend on;
alter database datafile 4 autoextend on;
6、創(chuàng)建數(shù)據(jù)字典/包/scott用戶
數(shù)據(jù)字典視圖 : @?/rdbms/admin/catalog.sql
系統(tǒng)包/存儲過程 : @?/rdbms/admin/catproc.sql
用戶PROFILE表 : @?/sqlplus/admin/pupbld.sql
以上已完成安裝oracle軟件及數(shù)據(jù)庫.
問題整理和完善
1、***** sqlplus / as sysdba 提示未找到libclntsh.so.11.1文件
$ sqlplus / as sysdba
sqlplus: error while loading shared libraries: libclntsh.so.11.1: cannot open shared object file: No such file or directory
$cd $ORACLE_HOME/lib/
$ ls libclntsh.so*
libclntsh.so libclntsh.so.10.1 –>只有10.1 cp -rp 連帶屬性完全復制一份,正常若有l(wèi)ibclntsh.so.11.1文件可能是權限問題。
$ cp -rp libclntsh.so.10.1 libclntsh.so.11.1
$ sqlplus / as sysdba
… 正常.
2、用于sys密碼登錄
orapwd file=orapwtest password=test
3、ORA-00904: “wm_concat”:invalid identifier
執(zhí)行創(chuàng)建WMSYS用戶腳本
SQL>@?/rdbms/admin/owmctab.plb
SQL>@?/rdbms/admin/owmaggrs.plb
SQL>@?/rdbms/admin/owmaggrb.plb
4、創(chuàng)建數(shù)據(jù)庫時報錯
ERROR at line 1:
ORA-01092: ORACLE instance terminated. Disconnection forced
ORA-01501: CREATE DATABASE failed
ORA-01519: error while processing file ‘?/rdbms/admin/dtxnspc.bsq’ near line 5
ORA-00604: error occurred at recursive SQL level 1
ORA-30012: undo tablespace ‘UNDOTBS02’ does not exist or of wrong type
Process ID: 35451
Session ID: 2661 Serial number: 1
關于linux oracle 克隆的介紹到此就結束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關注本站。
成都創(chuàng)新互聯(lián)科技有限公司,是一家專注于互聯(lián)網(wǎng)、IDC服務、應用軟件開發(fā)、網(wǎng)站建設推廣的公司,為客戶提供互聯(lián)網(wǎng)基礎服務!
創(chuàng)新互聯(lián)(www.cdcxhl.com)提供簡單好用,價格厚道的香港/美國云服務器和獨立服務器。創(chuàng)新互聯(lián)——四川成都IDC機房服務器托管/機柜租用。為您精選優(yōu)質idc數(shù)據(jù)中心機房租用、服務器托管、機柜租賃、大帶寬租用,高電服務器托管,算力服務器租用,可選線路電信、移動、聯(lián)通機房等。
文章名稱:如何在Linux環(huán)境下克隆Oracle數(shù)據(jù)庫(linuxoracle克隆)
網(wǎng)頁網(wǎng)址:http://m.fisionsoft.com.cn/article/coojpdp.html


咨詢
建站咨詢
