我系统为centos7,最小化安装的,需调用xshell图行化界面安装oracle**
前提准备
1、安装Xmanager,配置x11转发。
2、oracle下载地址 https://download.oracle.com
3、关闭selinux
临时关闭:
setenforce 0
永久关闭
vim /etc/selinux/config
更改SELINUX=disabled
然后重启。
4、关闭防火墙
systemctl stop firewalld && systemctl disable firewalld
5、创建oracle数据库的系统用户和用户组和设置密码
groupadd dba
useradd -g dba -m oracle
passwd oracle
6、创建oracle数据库安装目录,先将安装包解压到安装目录,再设置所属用户和组
mkdir -p /data/oracle
chown -R oracle:dba /data/oracle/
7、修改内核参数
vim /etc/sysctl.conf
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 = 4294967295
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
sysctl -p
8、修改oracle用户限制
vim /etc/security/limits.conf
oracle soft nproc 4096
oracle hard nproc 16384
oracle soft nofile 2048
oracle hard nofile 65536
9、创建数据库软件目录和数据文件存放目录
mkdir -p /opt/oracle/
mkdir -p /opt/oracle/oracle/product
mkdir -p /opt/oracle/oradata/
mkdir -p /opt/oracle/oralnventory
chown -R oracle:dba /opt/oracle
10、配置环境变量
vim /home/oracle/.bash_profile
export ORACLE_BASE=/opt/oracle/
export ORACLE_HOME=/data/oracle
export PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib
export ORACLE_SID=orcl
source /home/oracle/.bash_profile
部署
切换到oracle用户,配置display变量,192.168.190.1为我宿主机ip。
su -oracle
export DISPLAY=192.168.190.1:0
xhost +
如果执行安装程序还是无法调用图形化界面,新建一个xshell终端试试
进入安装目录,执行安装程序
cd /data/oracle
./runInstaller
您正在该主机上开始第一次安装指定安装元数据文件的目录(例如.install日志文件)。这个目录被称为“库存目录”。安装程序自动为每个产品设置子目录,以包含库存数据。每个产品的子目录通常需要150 KB的磁盘空间
配置自动内存和数据库字符集
默认情况下,Oracle数据库12c由Oracle Database Express管理。您可以使用OracleEnterprise Manager 12c云控制来集中管理每个Oracle数据库19c。指定云控制配置的详细信息以管理数据库
启用或禁用数据库恢复。如果选择启用恢复,则指定的位置将用作恢复区域存储
mkdir -p /opt/oracle/recovery_area
chown -R oracle:dba /opt/oracle
在软件配置过程中,必须以“root”用户的身份执行某些操作。您可以选择让安装程序通过为下面的选项指定输入来自动执行这些操作。指定的选项也将由安装程序用来执行
检查发现有警告
挂载本地镜像源,yum下载提示缺失的包
yum -y install compat-libcap1* libstdc++-devel* gcc-c++* ksh glibc-devel* libaio-devel* compat-libstdc++*
再次检查,发现只有swap分区有警告,直接跳过警告
核对配置,开始安装
弹框提示 “安装程序生成的配置脚本需要以特权用户(root)身份运行。安装程序将使用前面提供的特权用户凭据运行这些脚本”,选yes
等待安装完成,我一开始安装报错,查看日志 /opt/oracle/cfgtoollogs/dbca/orcl/orcl.log ,提示“oracle not available“,排查到给 oracle 分配的内存不够1G导致
安装日志
more /home/oracle/oraInventory/logs/installActions2023-04-04_05-26-39PM.log
安装详细日志
more /opt/oracle/cfgtoollogs/dbca/orcl/orcl.log
cat /data/oracle1/network/admin/listener.ora
lsnrctl start
启动报错了“The listener supports no services”
登录数据库发现本地监听已经配置
sqlplus / as sysdba
执行命令这个value给删除
Alter system set local_listener='';
show parameter local_listener;
重启oracale服务还是一样提示未注册
netmgr
再次查看状态,发现实例已经处于ready状态了
dbca命令可以创建数据库
dbca
select name from v$database; #显示当前连接的数据库
show user; #显示当前登录用户
show pdbs; #显示当前有的pdbs容器
select con_id,dbid,NAME,OPEN_MODE from v$pdbs; #查看pdb 容器信息
alter pluggable database ORCLPDB open; #打开PDBORCL 数据库
alter session set container=ORCLPDB; #切换当前Session到 ORCLPDB容器
create user xsx identified by "Xsx@12345678"; #创建xsx用户
alter user xsx identified by "Xsx12345678"; #修改密码
grant connect, resource, dba to xsx; #为xsx用户授权
revoke connect, resource, dba from xsx; #撤销xsx用户的授权
select username,account_status from dba_users; #查看dba用户状态
desc dba_users; #查看dba_users的字段
使用KETTLE连接数据库提示“Driver class ‘oracle.jdbc.driver.OracleDriver’ could not be found, make sure the ‘Oracle’ driver (jar file) is installed.
oracle.jdbc.driver.OracleDriver”
原因是没有找到oracle的驱动jar文件。那么找到oracle中相关的ojdbc的jar文件,将里面得jar文件拷贝到KETTLE安装目录的lib文件夹下,重启KETTLE
再次登录,测试成功