oracle搭建

1、软件准备

下载oracle11g安装包

链接:https://pan.baidu.com/s/1xXRs7AywnrqkBF-JGWkaTA 
提取码:elgr 

2 上传文件到虚拟机的 /soft 目录中

创建目录

mkdir /soft
chmod 777 /soft/

3 软件包检查

使用rpm检查没有安装的包(挨个rpm -q ***)

rpm -q binutils compat-libstdc++-33 elfutils-libelf gcc gcc-c++ glibc glibc-common glibc-devel \glibc-headers ksh libaio libaio-devel libgomp libgcc libstdc++ libstdc++-devel make sysstat unixODBC unixODBC-devel \numactl-devel elfutils-libelf-devel

如果没有则会出现package gcc is not installed,如下是我缺少的软件包

未安装软件包 compat-libstdc++-33 
未安装软件包 gcc 
未安装软件包 gcc-c++ 
未安装软件包 glibc-devel 
未安装软件包 glibc-headers 
未安装软件包 ksh 
未安装软件包 libaio-devel 
未安装软件包 libstdc++-devel 
未安装软件包 unixODBC 
未安装软件包 unixODBC-devel 
未安装软件包 numactl-devel 
未安装软件包 elfutils-libelf-devel

4 使用yum挨个安装上面的没有的软件(下面只是示例需要全部安装成功)

使用yum安装上面没有安装的包,yum会自动解决依赖包的问题。

yum install -y compat-libstdc++-33 
yum install -y gcc 
yum install -y gcc-c++ 
yum install -y glibc-devel 
yum install -y glibc-headers 
yum install -y ksh 
yum install -y libaio-devel 
yum install -y libstdc++-devel 
yum install -y unixODBC 
yum install -y unixODBC-devel 
yum install -y numactl-devel 
yum install -y elfutils-libelf-devel

2、内核参数

2.1 修改资源限制文件

vim /etc/security/limits.conf

在文件中追加下面几行

oracle soft nofile 65536
oracle hard nofile 65536
oracle soft nproc 16384
oracle hard nproc 16384

2.2 /etc/pam.d/login

在文件中追加下面几行,没有的话追加,有的话进行下一步(这一步可能导致虚拟机软件的登录的时候出问题登录不上去,测试删除第一样即注释掉就行了,实际写上使用secureCRT登录)

vim /etc/pam.d/login
#session required /lib/security/pam_limits.so(不用配置)
session required pam_limits.so

2.3 /etc/profile

在文件中追加下面几行

if [ $USER = "oracle" ]; then
 if [ $SHELL = "/bin/ksh" ]; then
  ulimit -p 16384
  ulimit -n 16384
 else
  ulimit -u 16384 -n 16384
 fi
fi

2.4 配置系统内核:/etc/sysctl.conf

vim /etc/sysctl.conf
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 4294967295
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 6550
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576

使用命令生效内核参数

sysctl -p(可能会报错需解决)

3、关闭防火墙、selinux

systemctl stop firewalld 

查看防火墙状态

systemctl status firewalld 

临时关闭selinux

setenforce 0

永久关闭selinux

vim /etc/selinux/config
SELINUX=disabled                   ##重启生效

查看selinux状态

getenforce

4、新建用户和组

创建oinstall组和dba组,创建oracle用户,该用户的基本组为oinstall,附加组为dba,设置oracle用户的密码

groupadd oinstall
groupadd dba
useradd -g oinstall -G dba -m oracle
echo oracle | passwd --stdin oracle

5、创建安装目录

创建安装目录,修改目录的所属主和所属组,修改目录权限

mkdir -p /u01/app/oracle
chown -R oracle:oinstall /u01/app
chmod -R 755 /u01/app/

mkdir /opt/oracle
chmod -R 755 /opt/oracle
chown -R oracle:oinstall /opt/oracle

6、配置用户的环境变量

把oracle新的安装目录写入环境变量中。如果不写入环境变量,在执行数据库管理命令dbca时会提示命令不存在。

vim /home/oracle/.bash_profile
export ORACLE_SID=crcsdb
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$PATH

使环境变量生效

source /home/oracle/.bash_profile

7、解压安装文件

前面我们已经上传过文件了,上传完成后,linux中查看文件是否存在

cd /soft/
ll
-rw-r--r--. 1 root root 28311552 5月  17 20:43 linux.x64_11gR2_database_1of2.zip
-rw-r--r--. 1 root root 28606464 5月  17 20:43 linux.x64_11gR2_database_2of2.zip

修改安装包的权限,修改安装包的属主和属组

chmod -R 777 /soft/
chown -R oracle:oinstall /soft/

解压文件1和2

unzip linux.x64_11gR2_database_1of2.zip
unzip linux.x64_11gR2_database_2of2.zip

9、静默安装

在/soft/database/response文件夹下有个配置模板oracle_install.rsp(可能名为db_install.rsp),cp一份:

cp db_install.rsp my_install.rsp

修改my_install.rsp(所以把所有注释去掉,下面红色标注的为关键参数,中文注释使用时请去掉)

#------------------------------------------------------------------------------

# Do not change the following system generated value.

#------------------------------------------------------------------------------

oracle.install.responseFileVersion=/oracle/install/rspfmt_dbinstall_response_schema_v11_2_0

oracle.install.option=INSTALL_DB_SWONLY -- 代表仅安装数据库软件

                -- 主机名

UNIX_GROUP_NAME=oinstall

INVENTORY_LOCATION=/opt/oracle/oraInventory

SELECTED_LANGUAGES=en,zh_CN

ORACLE_HOME=/u01/app/oracle/product/11.2.0/dbhome_1

ORACLE_BASE=/u01/app/oracle

oracle.install.db.InstallEdition=EE

oracle.install.db.isCustomInstall=true

oracle.install.db.customComponents=oracle.server:11.2.0.1.0,oracle.sysman.ccr:10.2.7.0.0,oracle.xdk:11.2.0.1.0,oracle.rdbms.oci:11.2.0.1.0,oracle.network:11.2.0.1.0,oracle.network.listener:11.2.0.1.0,oracle.rdbms:11.2.0.1.0,oracle.options:11.2.0.1.0,oracle.rdbms.partitioning:11.2.0.1.0,oracle.oraolap:11.2.0.1.0,oracle.rdbms.dm:11.2.0.1.0,oracle.rdbms.dv:11.2.0.1.0,orcle.rdbms.lbac:11.2.0.1.0,oracle.rdbms.rat:11.2.0.1.0

oracle.install.db.DBA_GROUP=dba

oracle.install.db.OPER_GROUP=oinstall

oracle.install.db.CLUSTER_NODES=

oracle.install.db.config.starterdb.type=GENERAL_PURPOSE

oracle.install.db.config.starterdb.globalDBName=crcsdb

oracle.install.db.config.starterdb.SID=crcsdb

oracle.install.db.config.starterdb.characterSet=ZHS16GBK -- 制定默认字符集

oracle.install.db.config.starterdb.memoryOption=true

oracle.install.db.config.starterdb.memoryLimit=1024

oracle.install.db.config.starterdb.installExampleSchemas=false

oracle.install.db.config.starterdb.enableSecuritySettings=true

oracle.install.db.config.starterdb.password.ALL=oracle

oracle.install.db.config.starterdb.password.SYS=

oracle.install.db.config.starterdb.password.SYSTEM=

oracle.install.db.config.starterdb.password.SYSMAN=

oracle.install.db.config.starterdb.password.DBSNMP=

oracle.install.db.config.starterdb.control=DB_CONTROL

oracle.install.db.config.starterdb.gridcontrol.gridControlServiceURL=

oracle.install.db.config.starterdb.dbcontrol.enableEmailNotification=false

oracle.install.db.config.starterdb.dbcontrol.emailAddress=

oracle.install.db.config.starterdb.dbcontrol.SMTPServer=

oracle.install.db.config.starterdb.automatedBackup.enable=false

oracle.install.db.config.starterdb.automatedBackup.osuid=

oracle.install.db.config.starterdb.automatedBackup.ospwd=

oracle.install.db.config.starterdb.storageType=

oracle.install.db.config.starterdb.fileSystemStorage.dataLocation=/u01/app/oracle_data  --此处不知道是干什么用的,没有就新建吧

oracle.install.db.config.starterdb.fileSystemStorage.recoveryLocation=/u01/app/oracle_recovery --此处不知道是干什么用的,没有就新建吧

oracle.install.db.config.asm.diskGroup=

oracle.install.db.config.asm.ASMSNMPPassword=

MYORACLESUPPORT_USERNAME=

MYORACLESUPPORT_PASSWORD=

SECURITY_UPDATES_VIA_MYORACLESUPPORT=

DECLINE_SECURITY_UPDATES=true --必须是true

PROXY_HOST=

PROXY_PORT=

PROXY_USER=

PROXY_PWD=

执行安装脚本 

cd /soft/database

./runInstaller -silent -force -ignorePrereq -responseFile /soft/database/response/my_install.rsp

加入参数 -ignorePrereq可使得跳过主机检查(有很多情况下会检查不通过),看控制台打印的日记文件路径,如果出现错误将打印到日志文件中,

安装日志默认在/tmp/ORAxxxxx/install下面,需要tail这个文件查看安装进度,如果出现错误,根据错误原因报告查找情况,一般情况下是由于环境配置不正确或者rsp文件有问题照成。

安装成功

信息: Number of root scripts to be executed = 2
以下配置脚本需要以 "root" 用户的身份执行。
 #!/bin/sh 
 #要运行的 Root 脚本

/opt/oracle/oraInventory/orainstRoot.sh
/u01/app/oracle/product/11.2.0/dbhome_1/root.sh
要执行配置脚本, 请执行以下操作:
	 1. 打开一个终端窗口
	 2. 以 "root" 身份登录
	 3. 运行脚本
	 4. 返回此窗口并按 "Enter" 键继续

信息: Shutting down OUISetupDriver.JobExecutorThread
信息: Cleaning up, please wait...
信息: Dispose the install area control object
信息: Update the state machine to STATE_CLEAN
Successfully Setup Software.
信息: All forked task are completed at state setup
信息: Completed background operations
信息: Moved to state <setup>
信息: Waiting for completion of background operations
信息: Completed background operations
信息: Validating state <setup>
警告: Validation disabled for the state setup
信息: Completed validating state <setup>
信息: Verifying route success
信息: Waiting for completion of background operations
信息: Completed background operations
信息: Executing action at state finish
信息: FinishAction Actions.execute called
信息: Completed executing action at state <finish>
信息: Waiting for completion of background operations
信息: Completed background operations
信息: Moved to state <finish>
信息: Waiting for completion of background operations
信息: Completed background operations
信息: Validating state <finish>
警告: Validation disabled for the state finish
信息: Completed validating state <finish>
信息: Terminating all background operations
信息: Terminated all background operations
信息: Successfully executed the flow in SILENT mode
信息: Finding the most appropriate exit status for the current application
信息: Exit Status is 0
信息: Shutdown Oracle Database 11g 发行版 2 安装程序
信息: Unloading Setup Driver

这时登录数据库是可以进去的

sqlplus / as sysdba

如果监听没有配置可以执行linux命令

lsnrctl start
lsnrctl status

10、创建实例(oracle.install.option=INSTALL_DB_SWONLY -- 代表仅安装数据库软件上边只是安装了数据库软件,还需要创建实例)

静默配置监听

netca /silent /responsefile /soft/database/response/netca.rsp

在/soft/database/response路径下,

cd /soft/database/response
cp dbca.rsp mydbca.rsp

配置下面参数

#以下参数不要更改
[GENERAL]
RESPONSEFILE_VERSION = "11.2.0"
OPERATION_TYPE = "createDatabase"
#以下参数必须设置
[CREATEDATABASE]
GDBNAME = "crcsdb"
TEMPLATENAME = "General_Purpose.dbc"
CHARACTERSET = "ZHS16GBK"
SID = "crcsdb"
#以下参数不设置则使用默认值,建议设置
#TOTALMEMORY = "1024"(测试的时候好像没写)
STORAGETYPE="FS"
DATAFILEDESTINATION="/u01/app/oracle"(不知道对不对,默认是$ORACLE_BASE/oradata感觉可以不进行设置)
NATIONALCHARACTERSET="AL16UTF16"


$ORACLE_HOME/bin/dbca -silent -responseFile /soft/database/response/mydbca.rsp执行脚本安装实例(或者cd 到$ORACLE_HOME/bin)

Enter SYS user password:
<输入sys用户密码> (默认manager 或者password)
Enter SYSTEM user password:
<输入system用户密码> (默认manager 或者password)
Copying database files
...
37% complete
Creating and starting Oracle instance
...
62% complete
Completing Database Creation
...
100% complete
Look at the log file "/u01/app/oracle/cfgtoollogs/dbca/ORCL/ORCL.log" for further details.

启动数据库监听,执行linux命令

lsnrctl start
sqlplus / as sysdba

创建表空间和用户:

mkdir -p /u01/app/oracle/oradata/hyman_dev
create tablespace hyman_tablespace datafile '/u01/app/oracle/oradata/hyman_dev/hyman_dev.dbf' size 1000M autoextend on next 100M;
create user hyman identified by 111111 default tablespace hyman_tablespace ;

为用户赋予一些权限:

grant connect,resource to hyman;  
grant create any sequence to hyman;  
grant create any table to hyman;  
grant delete any table to hyman;  
grant insert any table to hyman;  
grant select any table to hyman;  
grant unlimited tablespace to hyman;  
grant execute any procedure to hyman;  
grant update any table to hyman;  
grant create any view to hyman;  
grant dba to hyman; --表示把 dba权限授予给news用户
--上面是一些基本权限,下面配置可以查看执行计划的权限:
grant select on v_$sesstat to hyman;
grant select on v_$statname to hyman;
grant select on v_$session to hyman;
grant select on v_$sql_plan to hyman;
grant select on v_$sql_plan_statistics_all to hyman;
grant select on v_$sql to hyman;

plsql登录:

 关机重启后操作

  • 切换用户:su - oracle
  • 设置启动实例:export ORACLE_SID=crcsdb ,crcsdb为你要启动的实例的名称
  • 连接:sqlplus / as sysdba
  • 启动:startup,如果要关闭则用shutdown immediate
  • 退出:exit
  • 启动:lsnrctl start
  • 停止:lsnrctl stop
  • 查看状态:lsnrctl status ,如果查看到的状态为UNKNOWN,那么表明表示实例启动有问题,需要重新启动。状态为READY则表明服务正常
sqlplus hyman/111111@192.168.0.106:1521/crcsdb

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值