目录
1、准备oracle安装包
2、运行环境
3、安装oracle
4、配置Oracle监听程序
5、添加数据库(静默)实例
6、建立一个数据库
系统:centos7.9 内存:4G 磁盘:30G
修改主机名(会影响命令提示符中的主机名)
hostnamectl set-hostname control(重命名的名字)
vi /etc/hosts
添加内容:
本机ip control
关闭防火墙
systemctl stop firewalld.service
systemctl disable firewalld.service
关闭selinux (vi /etc/selinux/config)
修改:
SELINUX=disabled
修改CentOS系统标识 (由于Oracle默认不支持CentOS) vi /etc/redhat-release
redhat-7
系统内核配置更改(vi /etc/sysctl.conf)
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
kernel.shmall = 2097152
kernel.shmmax = 2147483648
net.ipv4.ip_local_port_range = 9000 65500
net.ipv4.icmp_echo_ignore_broadcasts = 1
net.ipv4.conf.all.rp_filter = 1
net.core.rmem_default = 262144
net.core.rmem_max= 4194304
net.core.wmem_default= 262144
net.core.wmem_max= 1048576
sysctl -p 查看配置是否生效
reboot 重启让selinux配置生效
关闭防火墙和selinux的原因是因为防火墙会限制端口访问、selinux会限制文件访问
创建用户和组
groupadd -g 500 oinstall #创建用户组oinstall组号500
groupadd -g 501 dba #创建用户组dba组号501
useradd -u 500 -d /home/oracle -s /usr/bin/bash -g oinstall -G dba oracle #创建oracle用户,并加入到oinstall和dba用户组
passwd oracle #修改密码
id oracle # 查看新建的oracle用户
安装依赖包
yum -y install binutils* compat-libcap1* compat-libstdc++* gcc* gcc-c++* glibc* glibc-devel* ksh* libaio* libaio-devel* libgcc* libstdc++* libstdc++-devel* libXi* libXtst* make* sysstat* elfutils* unixODBC* unzip lrzsz
创建oracle数据库安装目录
# mkdir -p /data/oracle #创建oracle主目录
# mkdir -p /data/inventory #创建oralce配置目录
# mkdir -p /data/src #创建oracle压缩包解压目录
# chown -R oracle:oinstall /data/oracle #修改目录权限
# chown -R oracle:oinstall /data/inventory
# chown -R oracle:oinstall /data/src
# ll /data #查看目录权限
修改oracle用户的安全性能设置(vi /etc/security/limits.conf)
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
配置用户的环境变量并启用(vi /home/oracle/.bashrc)
PATH=$PATH:$HOME/.local/bin:$HOME/bin
export PATH
export ORACLE_BASE=/data/oracle #oracle数据库安装目录
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1 #oracle数据库路径
export ORACLE_SID=orcl #oracle启动数据库实例名
export ORACLE_UNQNAME=orcl
#export ORACLE_TERM=xterm #xterm窗口模式安装(由于是静默安装这句话不要)
export PATH=$ORACLE_HOME/bin:/usr/sbin:$PATH #添加系统环境变量
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib #添加系统环境变量
export LANG=C #防止安装过程出现乱码
export NLS_LANG=AMERICAN_AMERICA.AL32UTF8 #设置Oracle客户端字符集,必须与Oracle安装时设置的字符集保持一致,如:AL32UTF8,否则出现数据导入导出中文乱码问题
source /home/oracle/.bashrc 让环境变量配置生效
将oracle两个安装包传输到 /date/src目录下并解压
unzip linux.x64_11gR2_database_1of2.zip -d /data/src/
unzip linux.x64_11gR2_database_2of2.zip -d /data/src/
编辑数据库安装文件 /data/src/database/response/db_install.rsp
oracle.install.option=INSTALL_DB_SWONLY # 安装类型
ORACLE_HOSTNAME=oracle.server # 主机名称
UNIX_GROUP_NAME=oinstall # 安装组
INVENTORY_LOCATION=/data/inventory # INVENTORY目录
SELECTED_LANGUAGES=en,zh_CN # 选择语言
ORACLE_HOME=/data/oracle/product/11.2.0/db_1 # oracle_home
ORACLE_BASE=/data/oracle # oracle_base
oracle.install.db.InstallEdition=EE # oracle版本
oracle.install.db.DBA_GROUP=dba # dba用户组
oracle.install.db.OPER_GROUP=oinstall # oper用户组
oracle.install.db.config.starterdb.type=GENERAL_PURPOSE # 数据库类型
oracle.install.db.config.starterdb.globalDBName=orcl #globalDBName
oracle.install.db.config.starterdb.SID=orcl # SID
oracle.install.db.config.starterdb.characterSet=AL32UTF8 # 默认数据库编码
oracle.install.db.config.starterdb.memoryLimit=800 # 自动管理内存的最小内存(M)
oracle.install.db.config.starterdb.password.ALL=oracle # 设定所有数据库用户使用同一个密码
DECLINE_SECURITY_UPDATES=true # 设置安全更新
安装oracle$
/data/src/database/runInstaller-silent-responseFile /data/src/database/response/db_install.rsp -ignorePrereq
安装成功(tail -f 日志位置 监听日志)
开启另一个终端切换用户root执行
/data/inventory/orainstRoot.sh (作用:修改文件权限)
/data/oracle/product/11.2.0/db_1/root.sh (作用:启动相关资源)
编辑监听配置文件 /data/src/database/response/netca.rsp
INSTALL_TYPE=""custom"" # 安装的类型
LISTENER_NUMBER=1 # 监听器数量
LISTENER_NAMES={"LISTENER"} # 监听器的名称列表
LISTENER_PROTOCOLS={"TCP;1521"} # 监听器使用的通讯协议列表
LISTENER_START=""LISTENER"" # 监听器启动的名称
执行命令:
/data/oracle/product/11.2.0/db_1/bin/netca /silent /responseFile /data/src/database/response/netca.rsp
监听的开机和关闭
开启监听:
/data/oracle/product/11.2.0/db_1/bin/lsnrctl start
关闭监听:
/data/oracle/product/11.2.0/db_1/bin/lsnrctl stop
编辑数据库实例文件/data/src/database/response/dbca.rsp
RESPONSEFILE_VERSION ="11.2.0" // 不要变哦
OPERATION_TYPE ="createDatabase" // 操作为创建实例
GDBNAME ="orcl" // 数据库实例名
SID ="orcl" // 实例名字
TEMPLATENAME = "General_Purpose.dbc" // 建库用的模板文件
SYSPASSWORD = "oracle" // SYS管理员密码
SYSTEMPASSWORD = "oracle" // SYSTEM管理员密码
SYSMANPASSWORD= "oracle"
DBSNMPPASSWORD= "oracle"
DATAFILEDESTINATION =/data/oracle/oradata // 数据文件存放目录
RECOVERYAREADESTINATION=/data/oracle/flash_recovery_area // 恢复数据存放目录
CHARACTERSET ="AL32UTF8" // 字符集
NATIONALCHARACTERSET= "AL16UTF16" // 字符集
TOTALMEMORY ="1638" // 1638MB,物理内存2G*80%。
执行命令:
/data/oracle/product/11.2.0/db_1/bin/dbca-silent-responseFile /data/src/database/response/dbca.rsp
查看实例是否运行
ps -ef | grep ora_ | grep -v grep
修改启动和关闭实例的程序(选择性修改)
修改文件: /data/oracle/product/11.2.0/db_1/bin/dbstart
/data/oracle/product/11.2.0/db_1/bin/dbshut
将
ORACLE_HOME_LISTNER=$1
修改为
ORACLE_HOME_LISTNER=/data/oracle/product/11.2.0/db_1
修改文件: /etc/oratab
将
orcl:/data/oracle/product/11.2.0:N
修改为
orcl:/data/oracle/product/11.2.0:Y
启动或者关闭实例
启动实例:
/data/oracle/product/11.2.0/db_1/bin/dbstart
关闭实例:
/data/oracle/product/11.2.0/db_1/bin/dbshut
进入oracle数据库
命令格式:Sqlplus 用户名/密码 [as sysdba]
sqlplus / as sysdba ---------以sys登陆 超级用户(sysdba)
“sysdba” :数据库管理员。权限包括:打开数据库服务器、关闭数据库服务器、备份数据库、恢复数据库、日志归档、会话限制、管理功能和创建数据库。
数据库用sysdba登录的验证有两种方式,一种是通过os认证,一种是通过密码文件验证;登录方式有两种,一种是在数据库主机直接登录(用os认证的方式),一种是通过网络远程登录;需要设置的参数有两个,一个是SQLNET.AUTHENTICATION_SERVICES,一个是REMOTE_LOGIN_PASSWORDFILE。
“sysyoper”:数据库操作员。权限包括:打开数据库服务器、关闭数据库服务器、备份数据库、恢复数据库、日志归档和会话限制。
“normal”:普通用户。权限只有查询某些数据表的数据。
SYS和SYSTEM是每个ORACLE 数据库系统缺省安装的两个帐户。SYS是所有内部数据库表、结构、过程包、等拥有者,此外它还拥有 V$和数据字典视图,并创建所有封装的数据库角色(DBA,CONNECT,RESOURCE)。 Sys是一个唯一能访问特定内部数据字典的用户。System也是在安装Oracle时创建的用户,用于 DBA任务的管理。
建库
CREATE TABLESPACE MyDataBase LOGGING DATAFILE '/data/oracle/oradata/MyDataBase.dbf' SIZE 100M AUTOEXTEND ON NEXT 32M MAXSIZE 500M EXTENT MANAGEMENT LOCAL; #建库
select * from v$database; #查看所有数据库
select MyDataBase from v$database; #查看数据库
create temporary TABLESPACE MyDataBase_temp tempfile '/data/MyDataBase_temp.dbf' SIZE 100M AUTOEXTEND ON NEXT 32M MAXSIZE 500M EXTENT MANAGEMENT LOCAL;#创建临时数据库
drop tablespace MyDataBase including contents and datafiles; #删除数据库
参考博客:https://blog.csdn.net/weixin_30848775/article/details/98705580