Linux(Centos7)静默安装Oracle19C
Oracle数据库服务器一般都是Linux,Linux服务器一般都是在非图形界面的操作,本文章手把手教你如何在非图形界面安装Oracle19C。
- ORACLE 19C 的安装包自行在官网下载,下载免费,但需要注册账号,现提供一个账号
账号:2969868321@qq.com
密码:Yang199324.
- 下载地址:https://www.oracle.com/database/technologies/oracle-database-software-downloads.html#19c
- 下载后的安装包文件上传至服务器(本例上传至/Tools)
- 静态IP配置可参考此文章:https://www.cnblogs.com/yyxp/p/15936049.html
1、检查依赖包
[root@localhost ~]# rpm --query --queryformat "%{NAME}-%{VERSION}.%{RELEASE} (%{ARCH})\n" bc binutils compat-libcap1 compat-libstdc++-33 gcc gcc-c++ glibc glibc-devel ksh libaio libaio-devel libgcc libstdc++ libstdc++-devel make sysstat elfutils-libelf elfutils-libelf-devel fontconfig-devel libxcb smartmontools libX11 libXau libXtst libXrender libXrender-devel
2、安装未安装的依赖包
[root@localhost ~]# yum -y install compat-libcap1 compat-libstdc++-33 gcc gcc-c++ glibc-devel ksh libaio-devel libaio-devel sysstat elfutils-libelf-devel fontconfig-devel libxcb smartmontools libX11 libXau libXtst libXrender libXrender-devel
3、创建oracle用户组
[root@localhost ~]# groupadd oinstall
[root@localhost ~]# groupadd dba
[root@localhost ~]# groupadd asmdba
[root@localhost ~]# groupadd backupdba
[root@localhost ~]# groupadd dgdba
[root@localhost ~]# groupadd kmdba
[root@localhost ~]# groupadd racdba
[root@localhost ~]# groupadd oper
[root@localhost ~]# useradd -g oinstall -G dba,asmdba,backupdba,dgdba,kmdba,racdba,oper -m oracle
#!/bin/bash
groupadd oinstall
groupadd dba
groupadd asmdba
groupadd backupdba
groupadd dgdba
groupadd kmdba
groupadd racdba
groupadd oper
useradd -g oinstall -G dba,asmdba,backupdba,dgdba,kmdba,racdba,oper -m oracle
- 创建一个创建用户的脚本(createuser.sh)
- sh createuser.sh
4、修改主机名
[root@localhost ~]# hostname # 查看主机名
[root@localhost ~]# hostname oracledb # 修改主机名为oracledb
5、配置hosts
[root@localhost ~]# vim /etc/hosts
192.168.137.147 oracledb
6、修改内核参数
[root@localhost ~]# vim /etc/sysctl.conf
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 16451328
kernel.shmmax = 33692319744
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
7、使修改的内容生效
[root@localhost ~]# sysctl -p
8、关闭selinux及firewall
[root@localhost ~]# setenforce 0 // 不重启系统生效
[root@localhost ~]# vim /etc/selinux/config # 修改为SELINUX=disabled 重启系统后生效
[root@localhost ~]# systemctl status firewalld.service # 查看状态
[root@localhost ~]# systemctl stop firewalld.service # 停止 firewall
[root@localhost ~]# systemctl disable firewalld.service # 禁止 firewall 开机启动
9、创建安装目录
[root@localhost ~]# mkdir -p /home/oracle/app/oracle/product/19.5.0
10、解压
[root@localhost ~]# unzip /Tools/LINUX.X64_193000_db_home.zip -d /home/oracle/app/oracle/product/19.5.0/
11、修改安装文件的所属用户及权限
[root@localhost ~]# cd /home/oracle
[root@localhost ~]# chown -R oracle:oinstall app
[root@localhost ~]# chmod -R 755 app
12、修改用户的Shell限制
[root@localhost ~]# vim /etc/security/limits.conf
@oinstall soft nofile 2048
@oinstall hard nofile 65536
@oinstall soft nproc 16384
@oinstall soft stack 10240
13、配置oracle用户的环境变量
[root@localhost ~]# su - oracle # 切换至oracle用户环境
[oracle@localhost ~]$ vim .bash_profile
[oracle@localhost ~]$ source .bash_profile
export ORACLE_BASE=/home/oracle/app/oracle
export ORACLE_HOME=/home/oracle/app/oracle/product/19.5.0
export PATH=$PATH:$ORACLE_HOME/bin:/usr/local/bin
export ORACLE_HOSTNAME=oracledb
export ORACLE_SID=orcl
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$ORACLE_HOME/rdbms/lib:$ORACLE_HOME/network/lib:/lib:/usr/lib
export CLASSPATH=$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib:$ORACLE_HOME/network/jlib
14、静默安装之修改安装引导文件
[oracle@localhost ~]$ cd $ORACLE_HOME/install/response
[oracle@oracledb response]$ cp db_install.rsp db_install.rsp.bak
[oracle@oracledb response]$ vim db_install.rsp
// 主要修改以下参数
oracle.install.option=INSTALL_DB_SWONLY // 29行
UNIX_GROUP_NAME=oinstall // 34行
INVENTORY_LOCATION=/home/oracle/app/oraInventory // 41行
ORACLE_HOME=/home/oracle/app/oracle/product/19.5.0 // 45行
ORACLE_BASE=/home/oracle/app/oracle // 50行
oracle.install.db.InstallEdition=EE // 62行
oracle.install.db.OSDBA_GROUP=dba // 79行
oracle.install.db.OSOPER_GROUP=oper // 85行
oracle.install.db.OSBACKUPDBA_GROUP=backupdba // 90行
oracle.install.db.OSDGDBA_GROUP=dgdba // 95行
oracle.install.db.OSKMDBA_GROUP=kmdba // 100行
oracle.install.db.OSRACDBA_GROUP=racdba // 105行
oracle.install.db.rootconfig.executeRootScript=false // 120行
- :set number 显示行号
- :set nu 显示行号
- :set nu! 取消显示行号
15、执行安装
[oracle@localhost ~]$ cd $ORACLE_HOME
[oracle@localhost ~]$ ./runInstaller -silent -responseFile /home/oracle/app/oracle/product/19.5.0/install/response/db_install.rsp
16、以root用户执行脚本
[root@localhost ~]# sh /home/oracle/app/oraInventory/orainstRoot.sh
[root@localhost ~]# sh /home/oracle/app/oracle/product/19.5.0/root.sh
-----------备注,静默安装文件路径-------------------------------------------
软件:/home/oracle/app/oracle/product/19.5.0/install/response/db_install.rsp
监听:/home/oracle/app/oracle/product/19.5.0/assistants/netca/netca.rsp
建库:/home/oracle/app/oracle/product/19.5.0/assistants/dbca/dbca.rsp
17、创建监听
[oracle@oracledb 19.5.0]$ cd assistants/netca
[oracle@oracledb netca]$ cp netca.rsp netca.rsp.bak
[oracle@oracledb netca]$ netca /silent /responseFile /home/oracle/app/oracle/product/19.5.0/assistants/netca/netca.rsp
18、建库
[oracle@oracledb netca]$ cd $ORACLE_HOME/assistants/dbca
[oracle@oracledb dbca]$ cp dbca.rsp dbca.rsp.bak
[oracle@oracledb dbca]$ vim dbca.rsp
[oracle@oracledb dbca]$ dbca -silent -createDatabase -responseFile /home/oracle/app/oracle/product/19.5.0/assistants/dbca/dbca.rsp
-------------主要修改以下参数----------------------------------
gdbName=orcl //32行
sid=orcl //42行
databaseConfigType=SI //52行
templateName=General_Purpose.dbc //223行
sysPassword=Yangxiaopeng210 //233行
systemPassword=Yangxiaopeng210 //243行
emConfiguration=NONE //262行
dbsnmpPassword=Yangxiaopeng210 //295行
datafileDestination=/home/oracle/app/oracle/oradata //411行
recoveryAreaDestination=/home/oracle/flash_recovery_area //421行
storageType=FS //431行
characterSet=ZHS16GBK //468行
nationalCharacterSet=AL16UTF16 //478行
sampleSchema=true //565行
totalMemory=2048 //604行
# 如果要创建容器数据库,则还需要配置以下参数,如果是多个pdb则以pdbname为前缀
createAsContainerDatabase=true //162行
numberOfPDBs=1 //172行
pdbName=yhggi //182行
pdbAdminPassword=password //203行
- 执行建库脚本后如果提示输入密码,手动输入密码。长度至少8字符,至少一个大写字母、一个小写字母、一个数字
19、服务验证及SQLPLUS验证
[oracle@oracledb dbca]$ lsnrctl status # 查看监听状态
[oracle@oracledb dbca]$ lsnrctl restart # 重启监听
[oracle@oracledb dbca]$ lsnrctl stop # 停止监听
[oracle@oracledb dbca]$ lsnrctl start # 启动监听
[oracle@oracledb dbca]$ sqlplus
- 输入用户名和密码
- select sysdate from dual;
20、JAVA 代码验证
package test;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
public class oracle12c {
public static void main(String[] args) {
Connection con = null; // 创建一个数据库连接
PreparedStatement pre = null; // 创建预编译语句对象,一般都是用这个而不用Statement
ResultSet result = null; // 创建一个结果集对象
try
{
Class.forName("oracle.jdbc.driver.OracleDriver"); //加载oracle驱动
System.out.println("开始连接数据库");
String url = "jdbc:oracle:thin:@192.168.137.147:1521:orcl";
String user = "system";
String passwd = "Yangxiaopeng214";
con = DriverManager.getConnection(url, user, passwd);// 获取连接
System.out.println("连接成功!");
String sql = "select sysdate as datatime from dual where 1=? ";// 预编译语句,“?”代表参数
pre = con.prepareStatement(sql);// 实例化预编译语句
pre.setString(1, "1"); // 设置参数,前面的1表示参数的索引,而不是表中列名的索引
result = pre.executeQuery();// 执行查询,注意括号中不需要再加参数
while(result.next())
{
String str1 = result.getString(1);
System.out.println("str1:"+str1);
}
}catch(Exception e){
e.printStackTrace();
}finally {
try
{
if (result != null) result.close(); //关闭资源
if (pre != null) pre.close();
if (con != null) con.close();
System.out.println("数据库已关闭!");
}
catch(Exception e) {
e.printStackTrace();
}
}
}
}
其他
- 启动服务
先启动监听,再启动数据库
[oracle@oracledb ~]$ lsnrctl start # 启动监听
[oracle@oracledb ~]$ sqlplus /nolog # 打开sqlplus
SQL> conn / as sysdba # 连接数据库
SQL> startup # 启动数据库
SQL> shutdown # 关闭数据库
SQL> exit # 退出
[oracle@oracledb ~]$ lsnrctl stop # 停止监听
Linux(Centos7)静默安装Oracle19C的更多相关文章
- CentOS7.9静默安装Oracle19C软件
CentOS7.9静默安装Oracle19C软件 Oracle发布了支持的版本.可以看到了Oracle11gR2和Oracle12C.一直到2022年就不支持patch和服务.(感慨Oracle 11 ...
- [转]Oracle 11g 基于CentOS7静默安装教程(无图形界面,远程安装) --有部份地方有问题
Oracle 11g 基于CentOS7静默安装教程(无图形界面,远程安装) [转载]原文地址:http://canonind.blog.51cto.com/8239025/1883066 一.安装前 ...
- linux 之静默安装oracle
Web服务器上面的Linux一般是不会有图形界面的,所有通过图形界面来安装Linux的方式在没有图形界面的Linux上面是行不通的,我们要使用的安装方式叫做Linux的静默安装.即在没有图形界面的Li ...
- Linux CentOs7 下安装 redis
Linux CentOs7 下安装 redis 请将以下命令放入linux命令行中运行 如果安装过程前没有安装GCC请先安装 命令如下 $ yum install gcc-c++ $ wget ht ...
- (转)LINUX CENTOS7下安装PYTHON
LINUX CENTOS7下安装PYTHON 原文:http://www.cnblogs.com/lclq/p/5620196.html Posted on 2016-06-27 14:58 南宫羽香 ...
- Linux CentOS7下安装Zookeeper-3.4.10服务(最新)
Linux CentOS7下安装Zookeeper-3.4.10服务(最新) 2017年10月27日 01:25:26 极速-蜗牛 阅读数:1933 版权声明:本文为博主原创文章,未经博主允许不得 ...
- Linux(CentOS7)下安装jdk1.8
Linux(CentOS7) 下安装 jdk1.8 操作过程. 一.检查是否自带jdk rpm -qa|grep java 如果存在则用下面命令删除,xxx yyy zzz代表查询出来的自带jdk名称 ...
- centos7 静默安装oracle
系统centos7.4 mini 关闭selinux.firewalld 配置主机名: hostnamectl set-hostname --static oracle 之前说oracle不认cen ...
- CentOS7静默安装Oracle 18g数据库(无图形化界面)
说明: 因为是静默安装,所以我们不需要安装图形界面 准备:下载Oracle软件 官方网站:http://www.oracle.com/technetwork/database/enterprise-e ...
随机推荐
- IDM调用参数
cmd调用IDM 基本命令: IDMan /d URL [/p 本地文件路径] [/f 本地文件名] [/q] [/h] [/n] [/a] 参数: 名称 作用 /d 下载文件的url /s 开始任务 ...
- python---插入排序的实现
插入排序 思想 列表被分为有序区和无序区两个部分, 最初有序区只有一个元素, 每次从无序区选择一个元素, 插入到有序区的位置, 直到无序区变空 import random from cal_tim ...
- Mybatis-plugins分页助手实现查询数据分页
其他具体代码接上文->mybatis自定义处理器 1.导入坐标 <dependency> <groupId>com.github.pagehelper</group ...
- 3种方法改变this的指向
<body> <div style="width: 200px;height: 200px;hotpink;"></div> & ...
- sql语句——DML
DML:增删改表中数据 1. 添加数据: * 语法: * insert into 表名(列名1,列名2,...列名n) values(值1,值2,...值n); * 注意: 1. 列名和值要一一对应. ...
- transition 动画过渡
1. html 结构 <!DOCTYPE html> <html lang="en"> <head> <meta charset=&quo ...
- zookeeper篇-初识zookeeper
点赞再看,养成习惯,微信搜索「小大白日志」关注这个搬砖人. 文章不定期同步公众号,还有各种一线大厂面试原题.我的学习系列笔记. 什么是zookeeper? 中间件 作用于分布式系统 支持java.c语 ...
- VDO虚拟数据优化
VDOVirtual Data Optimize 虚拟数据优化 是一种通过压缩或删除存储设备上的数据来优化存储空间的技术. VDO 是红帽公司收购了 Permabit 公司后获取的新技术,并与2019 ...
- Linux-SUID提权
前言 最近打靶场的时候最后都会涉及到提权,所以想着总结一下. SUID提权原理 SUID(设置用户ID)是赋予文件的一种权限,它会出现在文件拥有者权限的执行位上,具有这种权限的文件会在其执行时,使调用 ...
- 【面试普通人VS高手系列】volatile关键字有什么用?它的实现原理是什么?
一个工作了6年的Java程序员,在阿里二面,被问到"volatile"关键字. 然后,就没有然后了- 同样,另外一个去美团面试的工作4年的小伙伴,也被"volatile关 ...