說明:該教程轉自CSDN,大致流程是正確的,可是裏面有寫路徑配置是混亂的,先轉過來,等有時間了再改下。html
根據這個教程,阿里雲上面已經配置好了oracle,系統是centos 6.5linux
listen.orasql
SID_LIST_LISTENER = (SID_LIST = (SID_DESC = (GLOBAL_DBNAME = orcl) (ORACLE_HOME = /home/oracle/app/oracle/product/11.2.0/db_1) (SID_NAME = orcl) ) ) LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = ***.***.***.***)(PORT = 1521)) ) ) ~
sqlnet.ora數據庫
SQLNET.AUTHENTICATION_SERVICES= (all) NAMES.DIRECTORY_PATH= (TNSNAMES, ONAMES, HOSTNAME) ADR_BASE = /home/oracle/app
建立用戶和表空間編程
--1.表空間 CREATE TABLESPACE sdt DATAFILE '/home/oracle/tablespace/mdata' size 400M EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO; --2.建用戶 create user aslan identified by aslan default tablespace sdt; --3.賦權 grant connect,resource to aslan ; grant create any sequence to aslan ; grant create any table to aslan ; grant delete any table to aslan ; grant insert any table to aslan ; grant select any table to aslan ; grant unlimited tablespace to aslan ; grant execute any procedure to aslan ; grant update any table to aslan ; grant create any view to aslan ;
刪除用戶和表空間命令:vim
步驟一: 刪除user drop user ×× cascade 說明: 刪除了user,只是刪除了該user下的schema objects,是不會刪除相應的tablespace的。 步驟二: 刪除tablespace DROP TABLESPACE tablespace_name INCLUDING CONTENTS AND DATAFILES; 查詢表空間: select ts#,name from v$tablespace;
開放1521端口號:centos
#vi /etc/sysconfig/iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 1521 -j ACCEPT
proc編程:bash
經過proc方式鏈接oracle數據庫,讀取,插入數據。服務器
本文借鑑瞭如下做者的文章:http://www.cnblogs.com/zhangyongli2011/archive/2012/04/04/2431953.html 和 http://blog.csdn.net/lnwf5188588/article/details/8683887session
阿里雲SUSE Linux安裝oracle11g
Linux服務器:SuSe11 sp2 64位
Oracle服務器:Oracle11gR2 64位
系統要求 |
說明 |
內存 |
必須高於1G的物理內存 |
交換空間 |
能夠不用交換空間,目前阿里雲默認沒有開啓,也能夠安裝。(開啓方法:http://blog.csdn.net/u012203437/article/details/49737365) |
硬盤 |
5G以上 |
2.修改操做系統核心參數
在Root用戶下執行如下步驟:
1)修改用戶的SHELL的限制,修改/etc/security/limits.conf文件
輸入命令:vi /etc/security/limits.conf,按i鍵進入編輯模式,將下列內容加入該文件。
oracle soft nproc 2047 |
編輯完成後按Esc鍵,輸入「:wq」存盤退出
2)修改/etc/pam.d/login 文件,輸入命令:vi /etc/pam.d/login,按i鍵進入編輯模式,將下列內容加入該文件。
session required /lib/security/pam_limits.so |
編輯完成後按Esc鍵,輸入「:wq」存盤退出
3)修改linux內核,修改/etc/sysctl.conf文件,輸入命令: vi /etc/sysctl.conf ,按i鍵進入編輯模式,將下列內容加入該文件
fs.file-max = 6815744 |
編輯完成後按Esc鍵,輸入「:wq」存盤退出
4)要使 /etc/sysctl.conf 更改當即生效,執行如下命令。 輸入:sysctl -p 顯示以下:
linux:~ # sysctl -p net.ipv4.icmp_echo_ignore_broadcasts = 1 net.ipv4.conf.all.rp_filter = 1 fs.file-max = 6815744 fs.aio-max-nr = 1048576 kernel.shmall = 2097152 kernel.shmmax = 2147483648 kernel.shmmni = 4096 kernel.sem = 250 32000 100 128 net.ipv4.ip_local_port_range = 9000 65500 net.core.rmem_default = 4194304 net.core.rmem_max = 4194304 net.core.wmem_default = 262144 net.core.wmem_max = 1048576 |
5)編輯 /etc/profile ,輸入命令:vi /etc/profile,按i鍵進入編輯模式,將下列內容加入該文件。
if [ $USER = "oracle" ]; then fi |
編輯完成後按Esc鍵,輸入「:wq」存盤退出
6)建立相關用戶和組,做爲軟件安裝和支持組的擁有者。
建立用戶,輸入命令: groupadd oinstall 建立Oracle用戶和密碼,輸入命令: useradd -g oinstall -g dba -m oracle passwd oracle 而後會讓你輸入密碼,密碼任意輸入2次,但必須保持一致,回車確認 |
7)建立數據庫軟件目錄和數據文件存放目錄,目錄的位置,根據本身的狀況來定,注意磁盤空間便可,這裏我把其放到oracle用戶下,例如:
輸入命令: mkdir /home/oracle/app mkdir /home/oracle/app/oracle mkdir /home/oracle/app/oradata mkdir /home/oracle/app/oracle/product |
8)更改目錄屬主爲Oracle用戶全部,輸入命令:
chown -R oracle:oinstall /home/oracle/app
|
9)配置oracle用戶的環境變量,首先,切換到新建立的oracle用戶下,
輸入:su – oracle ,而後直接在輸入 : vi .bash_profile
按i編輯 .bash_profile,進入編輯模式,增長如下內容:
umask 022 export ORACLE_BASE=/home/oracle/app export ORACLE_HOME=$ORACLE_BASE/oracle/product/11.2.0/dbhome_1 export ORACLE_SID=orcl export PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib |
編輯完成後按Esc鍵,輸入「:wq」存盤退出
1.解壓安裝文件
unzip linux.x64_11gR2_database_1of2.zip
unzip linux.x64_11gR2_database_2of2.zip
2.準備db_install.rsp響應文件
cat /home/oracle/database/response/db_install.rsp |grep -v '#' > /home/oracle/db_install.rsp
修改下列參數:
vim /home/oracle/db_install.rsp
oracle.install.option=INSTALL_DB_SWONLY
ORACLE_HOSTNAME=calvin1.sink.com
UNIX_GROUP_NAME=oinstall
INVENTORY_LOCATION=/data/app/oracle/oraInventory
SELECTED_LANGUAGES=en,zh_CN
ORACLE_HOME=/data/app/oracle/product/11.2.0/db_1
ORACLE_BASE=/data/app/oracle
oracle.install.db.InstallEdition=EE
oracle.install.db.isCustomInstall=true
oracle.install.db.DBA_GROUP=dba
oracle.install.db.OPER_GROUP=oinstall
oracle.install.db.config.starterdb.type=GENERAL_PURPOSE
oracle.install.db.config.starterdb.globalDBName=orcl
oracle.install.db.config.starterdb.SID=orcl
oracle.install.db.config.starterdb.password.ALL=oracle
DECLINE_SECURITY_UPDATES=true
3. 準備dbca.rsp響應文件
cp /home/oracle/database/response/dbca.rsp /home/oracle/
vi dbca.rsp 修改如下內容
GDBNAME = "orcl"
SID = "orcl"
SYSPASSWORD = "oracle"
SYSTEMPASSWORD = "oracle"
若是須要使用Oracle Enterprise Manager,則還須要修改如下參數以下:
EMCONFIGURATION="LOCAL"
SYSMANPASSWORD = "oracle"
DBSNMPPASSWORD = "oracle"
4.準備監聽響應文件
cat /home/oracle/database/response/netca.rsp |grep -v '#' >/home/oracle/netca.rsp
修改如下內容
vi /home/oracle/netca.rsp/netca.rsp
INSTALL_TYPE=""custom""
5.安裝oracle11g
/soft/database/runInstaller -silent -responseFile /home/oracle/db_install.rsp
安裝說明:
a. 選項-silent表示靜默安裝,免安裝交互,大部分安裝信息也不輸出
b. 選項-responseFile指定應答文件,要求用絕對路徑
c. 執行./runInstaller -help能夠查看安裝幫助
d. 若忽略-silent選項,將會容許交互,對於應答文件中未設置的項能夠再手工指定
e. 若添加-noconfig選項,能夠忽略應答文件中的安裝類型,而僅安裝數據庫軟件
安裝後運行
/home/oracle/app/oracle/product/11.2.0/dbhome_1/root.sh
/home/oracle/app/oracle/oraInventory/orainstRoot.sh
6.建立數據庫
dbca -silent -cloneTemplate -responseFile /home/oracle/dbca.rsp
7.建立監聽
netca /silent /responseFile /home/oracle/netca.rsp
8.修改三個數據庫配置文件(listener.ora, sqlnet.ora, tnsnames.ora)
listener.ora
# listener.ora Network Configuration File: /home/oracle/app/oracle/product/11.2.0/dbhome_1/network/admin/listener.ora
# Generated by Oracle configuration tools.
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = /home/oracle/app/oracle/product/11.2.0/dbhome_1)
(PROGRAM = extproc)
)
(SID_DESC =
(GLOBAL_DBNAME = orcl)
(ORACLE_HOME = /home/oracle/app/oracle/product/11.2.0/dbhome_1)
(SID_NAME = orcl)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
(ADDRESS = (PROTOCOL = TCP)(HOST = iZ23cugu66kZ)(PORT = 1521))
)
)
ADR_BASE_LISTENER = /home/oracle/app
sqlnet.ora
# sqlnet.ora Network Configuration File: /home/oracle/app/oracle/product/11.2.0/dbhome_1/network/admin/sqlnet.ora
# Generated by Oracle configuration tools.
#NAMES.DIRECTORY_PATH= (TNSNAMES, ONAMES, HOSTNAME)
SQLNET.AUTHENTICATION_SERVICES= (NTS)
NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)
ADR_BASE = /home/oracle/app
tnsnames.ora
# tnsnames.ora Network Configuration File:
# Generated by Oracle configuration tools.
ORCL =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = iZ23cugu66kZ)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = ORCL)
)
)
其中HOST就是主機名,能夠到/etc/hosts進行查看
9.開啓oracle監聽
lsnrctl start
dbstart $ORACLE_HOME
10.建立表空間及用戶
/*分爲四步 */ /*第1步:建立臨時表空間 */ create temporary tablespace user_temp tempfile 'D:\oracle\oradata\Oracle9i\user_temp.dbf' size 50m autoextend on next 50m maxsize 20480m extent management local; /*第2步:建立數據表空間 */ create tablespace user_data logging datafile 'D:\oracle\oradata\Oracle9i\user_data.dbf' size 50m autoextend on next 50m maxsize 20480m extent management local; /*第3步:建立用戶並指定表空間 */ create user username identified by password default tablespace user_data temporary tablespace user_temp; /*第4步:給用戶授予權限 */ grant connect,resource,dba to username;
至此,數據庫安裝完成。
提醒一點,在阿里雲服務器上運行服務,最好關閉ping功能,防止ping攻擊
下面關閉Linux服務器的ICMP協議。用根用戶登陸系統,而後輸入命令「echo "1" >/proc/sys/net/ipv4/icmp_echo_ignore_all」編輯配置文件。
這裏小編要說明的是當前用戶必須是root也就是根用戶,不然沒有權限修改配置文件。