oracle資料庫創建腳本
㈠ 個人經驗總結:Oracle10g手工創建資料庫
創建目錄
mkdir d:oracleproct database
mkdir e:oracleadminOra gmp
mkdir e:oracleadminOra gcmp
mkdir e:oracleadminOra gcreate
mkdir e:oracleadminOra gpfile
mkdir e:oracleadminOra gump
mkdir e:oracleflash_recovery_area
mkdir e:oracleoradata
mkdir e:oracleoradataOra g
生成windows服務 創建密碼文件 在cmd命令下運行
set ORACLE_SID=dbca 綠色部分設置oracle 實例名為 為ora g
d:oracleproct DB_ inoradim exe new sid ORA G startmode manual spfile d:oracleproct DB_ inoradim exe edit sid ORA G startmode a spfile
創建一個實例名為dbca 並且有手動啟動方式改為自動啟動
d:oracleproct DB_ inorapwd exe file=d:oracleproct db_ PWDOra g ora password=sysPassword force=y
用oracle自帶的orapwd 為sys用戶創建一個默認的密碼為sysPassword
執行創建資料庫腳本
D:oracleora insqlplus /nolog @D: sql
D:oracleora insqlplus /nolog @D:Files sql
D:oracleora insqlplus /nolog @D:Catalog sql
D:oracleora insqlplus /nolog @D: sql
黑體部分就是創建資料庫要調用的腳本
第一 CreateDB sql
connect SYS/change_on_install as SYSDBA 這是剛剛我們設置的密碼以sysdba身份連接到資料庫
connect SYS/change_on_install as SYSDBA 這是剛剛我們設置的密碼以sysdba身份連接到資料庫
set echo on
spool D:oracleora assistantsdbcalogsCreateDB log 寫日誌
startup nomount pfile= D:oracleadmindbcascriptsinit ora ; 調用參數文件 啟動資料庫到只裝載實例階段
CREATE DATABASE dbca
MAXINSTANCES
MAXLOGHISTORY
MAXLOGFILES
MAXLOGMEMBERS
MAXDATAFILES 控制文件記錄的相關最大日誌數 日誌組 最大數據文件數等限制
DATAFILE D:oracleoradatadbcasystem dbf SIZE M REUSE AUTOEXTEND ON NEXT K MAXSIZE UNLIMITED
EXTENT MANAGEMENT LOCAL
DEFAULT TEMPORARY TABLESPACE TEMP TEMPFILE D:oracleoradatadbca emp dbf SIZE M REUSE AUTOEXTEND ON NEXT K MAXSIZE UNLIMITED
UNDO TABLESPACE UNDOTBS DATAFILE D:oracleoradatadbcaundotbs dbf SIZE M REUSE AUTOEXTEND ON NEXT K MAXSIZE UNLIMITED 創建系統 臨時 回滾 表空間ITPUB個人空間!dJ l {!i W r f
CHARACTER SET ZHS GBK
NATIONAL CHARACTER SET AL UTF 字元集
LOGFILE GROUP ( D:oracleoradatadbca edo log ) SIZE K
GROUP ( D:oracleoradatadbca edo log ) SIZE K
GROUP ( D:oracleoradatadbca edo log ) SIZE K; 創建日誌文件租和成員
spool off
exit;
第二 CreateDBFiles sql
connect SYS/change_on_install as SYSDBA
set echo on
spool D:oracleora log
CREATE TABLESPACE INDX LOGGING DATAFILE D:oracleoradatadbcaindx dbf SIZE M REUSE AUTOEXTEND ON NEXT K MAXSIZE UNLIMITED EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO ;
CREATE TABLESPACE TOOLS LOGGING DATAFILE D:oracleoradatadbca ools dbf SIZE M REUSE AUTOEXTEND ON NEXT K MAXSIZE UNLIMITED EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO ;
CREATE TABLESPACE USERS LOGGING DATAFILE D:oracleoradatadbcausers dbf SIZE M REUSE AUTOEXTEND ON NEXT K MAXSIZE UNLIMITED EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO ; 創建相關用戶要用到的表空間
spool off
第三:CreateDBCatalog sql
創建system數據字典 存放到system表空間 相關表 視圖等
connect SYS/change_on_install as SYSDBA
set echo on
spool D:oracleora log
@D:oracleora dbmsadmincatalog sql;
@D:oracleora dbmsadmincatexp sql;
@D:oracleora dbmsadmincatblock sql;
@D:oracleora dbmsadmincatproc sql;
@D:oracleora dbmsadmincatoctk sql;
@D:oracleora dbmsadminowminst plb;
connect SYSTEM/manager
@D:oracleora sqlplusadminpupbld sql;
connect SYSTEM/manager
set echo on
spool D:oracleora assistantsdbcalogssqlPlusHelp log
@D:oracleora sqlplusadminhelphlpbld sql helpus sql;
spool off
spool off
exit;
第四: postDBCreation sql
connect SYS/change_on_install as SYSDBA
set echo on
spool D:oracleora log
@D:oracleora dbmsadminutlrp sql; 編譯相關視圖 包對象等
shutdown ; 關閉資料庫
connect SYS/change_on_install as SYSDBA
set echo on
spool D:oracleora log
create spfile= D:oracleora databasespfiledbca ora FROM pfile= D:oracleadmindbcascriptsinit ora ;
創建伺服器參數文件代替文件初始化參數文件 方便有時在不重啟資料庫的情況下可以使參數生效
從上面可以看到spfile文件的存放位置
startup ; 啟動資料庫 創建資料庫完成 從上面可以看出 創建資料庫有以下 個步驟
Step : 創建相關trace目錄文件夾
Step :創建實例 密碼 啟動方式
Step :創建初始化參數文件 init ora
Step : 連接到實例
Step : 啟動實例到nomount狀態
Step :創建資料庫
Step :創建表空間
Step : 運行腳本創建數據字典
Step : 創建伺服器參數文件(這步不是必須的 但oracle建議做這步) 好處會在以後的總結中列出
下面也貼出linux下腳本 和windows下幾乎差不多
#!/bin/sh
mkdir /oradata/ora i
mkdir /oradata/ora i/controlfile
mkdir /oradata/ora i/redofile
mkdir /orasys/oracle/admin
mkdir /orasys/oracle/admin/ora i
mkdir /orasys/oracle/admin/ora i/bmp
mkdir /orasys/oracle/admin/ora i/cmp
mkdir /orasys/oracle/admin/ora i/create
mkdir /orasys/oracle/admin/ora i/ump
mkdir /orasys/oracle/admin/ora i/pfile
cp init ora /orasys/oracle/proct/ /dbs/
export ORACLE_BASE=/orasys/oracle
export ORACLE_HOME=$ORACLE_BASE/proct/
export ORACLE_SID=ora i
export ORA_NLS =$ORACLE_HOME/omon/nls/admin/data
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
export LD_LIBRARY_PATH
export PATH=$PATH:$ORACLE_HOME/bin
echo Add this entry in the oratab: ora i:/orasys/oracle/proct/ :Y
/orasys/oracle/proct/ /bin/orapwd file=/orasys/oracle/proct/ /dbs/orapwora i password=change_on_install
/orasys/oracle/proct/ /bin/sqlplus /nolog @/home/oracle/create_script/CreateDB sql
/orasys/oracle/proct/ /bin/sqlplus /nolog @/home/oracle/create_script/CreateDBFiles sql
/orasys/oracle/proct/ /bin/sqlplus /nolog @/home/oracle/create_script/CreateDBCatalog sql
lishixin/Article/program/Oracle/201311/17648
㈡ oracle手動創建資料庫語句
oracle手動創建資料庫步驟語句:
1、編寫初始化參數文件。轎悉改
2、設置操作系統環境變數。
3、創建實例。
4、以管理員身份連接資料庫。
5、啟動實例。
6、create database 創建陸輪資料庫。
7、運行數據字典腳本。
8、Oracle的網路配置 客戶端連接到服閉判務端。
㈢ 新建Oracle資料庫的3種方法
以下是對新建Oracle資料庫的三種方法進行了詳細的分析介紹 需要的朋友可以過來參考下通過運行Oracle Database Configuration Assistant 創建 配置 或刪除資料庫(也可在命令行下輸入dbca) 用命令行的方式建立資料庫 通過運行自定義的批處理腳本(或create_ORACLE_SID bat(create_ORACLE_SID sql))來創建 配置 或刪除資料庫
詳述 通過運行Oracle Database Configuration Assistant 創建 配置 或刪除資料庫 建議不熟悉創建過程的DBA使用該方法 只需要根據選項「下一步」進行配置 最後生成資料庫的創建腳本(建議保留) 或者直接創建資料庫 優點 GUI方法使用方便 缺點 不過創建過程有些慢
用命令行的方式建立資料庫
復制代碼 代碼如下: CONNECT / AS SYSDBA STARTUP PFILE= C:oracleadmininit_testorcl ora NOMOUNT; CREATE DATABASE testOrcl DATAFILE /u /oracle/testOrcl/system dbf SIZE M LOGFILE GROUP ( /u /oracle/testOrcl/redo a log /u /oracle/testOrcl/redo b log ) SIZE K GROUP ( /u /oracle/testOrcl/redo a log /u /oracle/testOrcl/redo b log ) SIZE K CHARACTER SET ZHS CGB ;將資料庫直接從未建置狀態轉換到打開狀態 ALTER DATABASE OPEN;
刪除資料庫(Dropping a Database) SPOOL C:DROP_DATABASE BAT SELECT DEL ||NAME 刪除資料庫相關數據文件 FROM V$DATAFILE; SELECT DEL ||MEMBER 刪除數據重構日誌文件 FROM V$LOGFILE; SPOOL OFF;
優點 可以熟悉創建指令 創建原理 缺點 配置簡單 要求熟記命令行指令 通過運行自定義的批處理或SQL腳本(create_ORACLE_SID bat或create_ORACLE_SID sql)來創建
復制代碼 代碼如下: create_ORACLE_SID bat set ORACLE_SID= ORACLE_SID del C:ORACLE IdatabasepwdORACLE_SID ora C:ORACLE Ibinoradim new sid ORACLE_SID intpwd oracle startmode manual pfile C:ORACLE IadminORACLE_SIDpfileinit ora C:ORACLE Ibinsvrmgrl @C:_SIDrun sql C:ORACLE Ibinsvrmgrl @C:_SIDrun sql C:ORACLE Ibinoradim edit sid ORACLE_SID startmode auto ORACLE_SIDrun sql spool C:ORACLE IadminORACLE_SIDcreatecreatedb set echo on connect INTERNAL/oracle startup nomount pfile=C:ORACLE IadminORACLE_SIDpfileinit ora CREATE DATABASE ORACLE_SID LOGFILE C:ORACLE IoradataORACLE_SIDredo log SIZE K C:ORACLE IoradataORACLE_SIDredo log SIZE K MAXLOGFILES MAXLOGMEMBERS MAXLOGHISTORY DATAFILE C:ORACLE IoradataORACLE_SIDsystem dbf SIZE M REUSE MAXDATAFILES MAXINSTANCES CHARACTER SET ZHT BIG NATIONAL CHARACTER SET ZHT BIG ; spool off ORACLE_SIDrun sql spool C:ORACLE IadminORACLE_SIDcreatecreatedb set echo on connect INTERNAL/oracle ALTER DATABASE DATAFILE C:ORACLE IoradataORACLE_SIDsystem dbf AUTOEXTEND ON; CREATE ROLLBACK SEGMENT SYSROL TABLESPACE "SYSTEM" STORAGE (INITIAL K NEXT K); ALTER ROLLBACK SEGMENT "SYSROL" ONLINE;Linux平台下Oracle的操作
下面對Oracle的操作都是在Linux平台下進行的! su Oracle sqlplus /logon connect test/test assysdba(test/test是Oracle用戶和密碼) startup lsnrctl 首選啟動資料庫 su Oracle sqlplus /nolog conn /as sysdba startup 然後啟動監聽: 進入/opt/Oracle/proct/ /bin/ lsnrctl start 運行shudown命令關閉資料庫 [Oracle@wing /Oracle]$ sqlplus" / as sysdba" //以sysdba用戶登陸資料庫 SQL> shutdown
啟動Oracle i 資料庫 [Oracle@wing bin]$ sqlplus " /as sysdba" SQL> startup
啟動Oracle i監聽程序 Oracle的監聽程序主要是為客戶端的連接提供介面 [Oracle@wing bin]$ lsnrctl LSNRCTL> start
關閉Oracle i監聽程序 [Oracle@wing bin]$ lsnrctl LSNRCTL> stop 先看看Oracle_SID 環境變數設置是否正確 i $ sqlplus /nolog SQL> connect / as sysdba SQL> startup $ lsnrctl start i $ svrmgrl SVRMGR> connect internal SVRMGR> startup $ lsnrctl start 在哪裡報錯?? 一般只要設置這 處就好了~ /etc/oratab ora :/Oracle/app/Oracle/proct/ :Y /etc/inittab oralce: :wait:/bin/su Oracle c /Oracle/app/Oracle/proct/ /bin/lsnrctl start Oracle: :wait:/bin/su Oracle c /Oracle/app/Oracle/proct/ /bin/dbstart
啟動步驟 su Oracle [Oracle@websvr Oracle]$ sqlplus /nolog SQL> connect / as sysdba SQL> startup SQL> quit [Oracle@websvr Oracle]$ lsnrctl start 可用 [Oracle@websvr Oracle]$ lsnrctl status 查看監聽是否已經啟動
lishixin/Article/program/Oracle/201311/19064
㈣ oracle資料庫,批量插入數據腳本
批量插入數據腳本
1、第一種批量插入數據腳本,可以基本滿足要求。理解上較為簡單,所以這個最常用。
NEXTVAL和CURRVAL的區別:
1、如果 sequence.CURRVAL 和 sequence.NEXTVAL 都出現在一個 SQL 語句中,則序列只增加一次。在這種情況下,每個 sequence.CURRVAL 和 sequence.NEXTVAL 表達式都返回相同的值,不管在語句中sequence.CURRVAL 和 sequence.NEXTVAL 的順序。
執行腳本結果如下:
3、兩個表,同時批量插入數據的腳本
3、
4、 涉及子表時,批量插入數據腳本,
5、 批量修改數據 :
時間取數方式:
一、SYSTIMESTAMP(取當前系統值)
二、SYSDATE(取當前系統值,但只精確到時,分和秒都為0)
三、固定值為:TO_TIMESTAMP (-2-12 15:24:45.703000', 'yyyy-mm-dd hh24:mi:ss.ff6')
把固定的欄位改為變數:
方式一:』||i||』 例:』{「no」:「111』||i||』」}』(此方式)
方式二:concat 例:concat(concat(』{「blNo」:111"』,i),』"}』)
㈤ oracle怎麼創建資料庫實例
oracle手動創建資料庫步驟如下所示:
1.編寫初始化參數文件
2.設置操作系統環境變數
3.創建實例
4.以管理員身份連接資料庫
5.啟動實例
6.create database 創建資料庫
7.運行數據字典腳本
8.Oracle的網路配置 (客戶端連接到服務端)
初始化參數文件
從%ORACLE_HOME%\admin\sample\pfile從復制initsmpl.ora文件,並黏貼到$ORACLE_HOME%\database目錄下,改名為init<sid>假設改為initzhouyt.ora.(init為文本文件)
對initzhouyt.ora內容進行修改
新增參數
* instance_name=zhouyt
* db_domain=h.e.cn
修改參數
* db_name=zhouyt
* db_block_size=8192(8kM)
* remote_login_passwordfile=exclusive
操作系統環境變數
設置操作系統環境變數oracle_sid指向資料庫實例的名稱
set oracle_sid=zhouyt
該命令在window dos窗口下只對當前有效,當關閉窗口則失效,想要一直有效,則需要在系統環境變數中修改
創建實例
實用工具oradim使用
在DOS窗口輸入命令 oradim -new -sid zhouyt -intpwd sys123(sys的密碼,sys是管理員) -startmode auto
sid是Oracle在操作系統中的「身份證號碼」
管理員身份連接資料庫
sqlplus實用工具登錄資料庫
在DOS命令輸入sqlplus/nolog 只是登錄狀態
以資料庫管理員身份連接資料庫
在上面的基礎上輸入命令 connect sys/sys123 as sysdba
因為以 資料庫管理員身份 登錄可以 安裝資料庫
啟動實例
將文本初始化參數文件pfile轉化為二進制初始化參數文件spfile
因為資料庫啟動需要找到配置文件,默認尋找二進制文件,也可以手動啟動文本文件,那這一步就不需要了
輸入命令 create spfile from pfile; (將會報錯,因為文本文件比較老相對於Oracle 10g), 這個時候我們需要修改配置文件initzhouyt.ora
這個時候在%ORACLE_HOME%\database文件下會生成SPFILEZHOUYT.ora文件
以nomount形式啟動實例
命令 startup nomount,將會出現錯誤,當我們按照提示修改文本文件以後,如果我們還是按照startup nomount來啟動的話,我們要生成相應的二進制文件來覆蓋舊的二進制文件
並注釋%seed_control%
create databae 創建資料庫
創建資料庫腳本
三個文件
控制文件
數據文件
重做日誌文件
create database zhouyt
datafile
'C:\oracle\proct\10.2.0\db_2\zhouyt\system_01.dbf' size 100m
Autoextend on next 10m maxsize unlimited
sysaux datafile
'C:\oracle\proct\10.2.0\db_2\zhouyt\systemaux_01.dbf' size 60m
Autoextend on next 10m maxsize unlimited
logfile
group 1 ('C:\oracle\proct\10.2.0\db_2\zhouyt\log_1_01.rdo') size 10m,
group 2 ('C:\oracle\proct\10.2.0\db_2\zhouyt\log_2_01.rdo') size 10m
character set zhs16gbk;
需要確保目錄文件"db_2\zhouyt"存在
生成兩個數據文件和兩個重做日誌文件,那麼控制文件呢?
運行數據字典腳本
__資料庫創建後,系統會生成兩個管理員用戶sys和system
運行3個數據字典腳本
catalog.sql 創建系統常用的數據字典視圖和同義詞 (sys登錄);
catproc.sql 建立PL/SQL功能的使用環境,還創建幾個PL/SQL包用於擴展RDBMS功能 (sys登錄);
pupbld.sql 使用SQL*PLUS環境時需要 (system登錄)
在命令行輸入@ 加腳本文件的絕對路徑
第二個腳本過程和第一個一樣
執行第三個腳本需要切換到system用戶
connect system/manager
@ C:\oracle\proct\10.2.0\db_2\sqlplus\admin\pupbld.sql
創建scott模式
@ C:\oracle\proct\10.2.0\db_2\RDBMS\ADMIN\scott.sql
㈥ win10系統下怎樣用oracle生成新建資料庫腳本
具體方法如下:
1、首先找到oracle並點擊滑鼠右鍵,以管理員身份運行。
2、選擇創建新資料庫。
3、為新資料庫起個名字,其他沒提示一直點擊下一步。
4、添加口令。
5、選擇生成資料庫腳本。
6、生成成功。
㈦ oracle資料庫使用SQL腳本創建資料庫
1、第1、2個提示是由於序列和表不存在可以忽略
2、第3、4個提示
需要TourDB的建表語句