概述
注:本教程在结合网上教程,自己实际安装记录!
准备软件:
1.12c数据库安装包:linuxx64_12201_database.zip
2.jdk的rpm包:jdk-8u201-linux-x64.rpm
数据库安装流程:
1.安装依赖:
yum -y install binutils compat-libcap1 compat-libstdc++-33 compat-libstdc++-33*.i686 elfutils-libelf-devel gcc gcc-c++ glibc*.i686 glibc glibc-devel glibc-devel*.i686 ksh libgcc*.i686 libgcc libstdc++ libstdc++*.i686 libstdc++-devel libstdc++-devel*.i686 libaio libaio*.i686 libaio-devel libaio-devel*.i686 make sysstat unixODBC unixODBC*.i686 unixODBC-devel unixODBC-devel*.i686 libXp
2.建立用户组
groupadd oinstall
groupadd dba
groupadd oper
useradd -g oinstall -G dba,oper oracle
echo "oracle" | passwd --stdin oracle #oracle用户的登录密码,后续登录要用,记着。
3.创建安装目录:
mkdir -p /orcl/app/oracle/product/12.1.0/db_1
chown -R oracle:oinstall /orcl/app
chmod -R 775 /orcl/app
修改内核参数vi /etc/sysctl.conf
,添加:
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 4098955264
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
5.改文件限制:vi /etc/security/limits.conf
,添加:
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft stack 10240
注意:修改此文件是即时生效的,但可能要重登录后再看
6.以及vi /etc/pam.d/login
,添加:
session required pam_limits.so
7.修改ulimit:vi /etc/profile
,添加:
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536a
else
ulimit -u 16384 -n 65536
fi
fi
8.修改oracle用户环境变量。vi /home/oracle/.bash_profile
,添加:
ORACLE_BASE=/orcl/app/oracle
ORACLE_HOME=$ORACLE_BASE/product/12.1.0/db_1
ORACLE_SID=orcl
ORACLE_ADMIN=$ORACLE_HOME/network/admin
LANG=zh_CN.UTF-8
#NLS_LANG="SIMPLIFIED CHINESE_CHINA.ZHS16GBK"
NLS_LANG="american_america.zhs16gbk"
export ORACLE_BASE ORACLE_HOME ORACLE_SID ORACLE_ADMIN LANG NLS_LANG
PATH=$ORACLE_HOME/bin:$PATH
export PATH
9.如果系统自带了openJDK,用yum remove *openjdk*
把系统自带的openjdk卸载,
再安装sun jdk:rpm -ivh jdk-8u144-linux-x64.rpm
。(下载地址百度)(openjdk环境安装oracle GUI会报class notfound的错)。然后执行java -version
检查一下安装是否成功。
上述工作完成后,建议重启系统。
10.以oracle用户登录,开始安装:
注:下载好的Oracle要放到/orcl/app/oracle目录下,/orcl/app/oracle/下是2个目录:product和database。解压后的安装文件放在database下,如下步骤:
su oracle
cd /orcl/app/oracle
unzip linuxx64_12201_database.zip
export LANG="en_US"
#结合自己oracle用户实际编码 export LANG=zh_CN.UTF-8
cd /orcl/app/oracle/database
./runInstaller
执行如上安装命令,然后就会出现安装界面,配置过程从略。需要注意的是字符集要选择unicode
。
如果执行./runInstaller报错,详见下面数据库问题解决 第5点
11.按照步骤安装好数据库后执行dbca
,使用图形化界面创建数据库实例
Oracle12c数据库的创建用户的方式有所改变,因为Oracle 12C引入了CDB与PDB的新特性,具体特性就不多说了,感兴趣可查看官方文档。因此,我们平时所用的创建用户的命令也有所变化,必须得加C##或c##,那么,怎么恢复我们以前的创建用户习惯呢?
如果是第一次安装,则在创建数据库步骤中的创建模式中不要勾选“创建为容器数据库”,(或重装不要勾选该选项)
如果已经安装过了,则按照下面操作:
确保数据库是启动状态
sqlplus /nolog #nolog模式进入
conn sys/sys as sysdba #登录用户sys
show con_name #查看链接的用户
select con_id,dbid,NAME,OPEN_MODE from v$pdbs; #
alter session set container=PDBORCL; #
12.数据库的启动和关闭
启动
1.#su - oracle 切换到 oracle 用户且切换到它的环境
2.$lsnrctl status 查看监听及数据库状态
3.$lsnrctl start 启动监听
4.$sqlplus / as sysdba 以 DBA 身份进入 sqlplus
5.SQL>startup; #启动 db
停止
1.#su - oracle 切换到 oracle 用户且切换到它的环境
2.$lsnrctl stop 停止监听
3.$sqlplus / as sysdba 以 DBA 身份进入 sqlplus
4.SQL>SHUTDOWN IMMEDIATE; #关闭 db
数据库问题解决:
1.sqlplus 显示问号,解决办法
sqlplus / as sysdba
进入
解决办法:
SQL> show parameter nls_la
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
nls_language string SIMPLIFIED CHINESE
然后修改环境变量:NLS_LANG
[oracle@rac2 ~]$ export NLS_LANG=american_america.zhs16gbk
如果要使之永久生效,可以添加这个变量到oracle 用户环境 .bash_profile中。
问题解决
2.启动plsql去连接:ORA-12705:Cannot access NLS data files or invalid environment specified
如果是Windows平台,注册表里 HKEY_LOCAL_MACHINESOFTWAREORACLE
查找键 NLS_LANG
,这个键由Oracle标准客户端安装创建, 值是 NA
。这个导致了 ORA-12705
错误。解决方法就是修改NA
为SIMPLIFIED CHINESE_CHINA.ZHS16GBK
。
Linux下 如果环境变量 NLS_LANG
值是NA
会引起 ORA-12705
错误,解决方法是修改环境变量
set NLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK
。
3.远程连接设置
在listener.ora
增加:
SID_LIST_LISTENER=
(SID_LIST=
(SID_DESC=
(GLOBAL_DBNAME=orcl)
(SID_NAME=orcl)
(ORACLE_HOME=/orcl/app/oracle/product/12.1.0/db_1)
#(PRESPAWN_MAX=20)
#(PRESPAWN_LIST=
# (PRESPAWN_DESC=(PROTOCOL=tcp)(POOL_SIZE=2)(TIMEOUT=1))
#)
)
)
4.sqlplus连接报错:TNS-01189: The listener could not authenticate the user
请检查listener.ora
中监听主机是否非当前主机
5. 执行./runInstaller
报错如下:
[oracle@localhost database]$ ./runInstaller
正在启动 Oracle Universal Installer...
检查临时空间: 必须大于 500 MB。 实际为 41190 MB 通过
检查交换空间: 必须大于 150 MB。 实际为 8063 MB 通过
检查监视器: 监视器配置至少必须显示 256 种颜色
>>> 无法使用命令 /usr/bin/xdpyinfo 自动检查显示器颜色。请检查是否设置了 DISPLAY 变量。 未通过 <<<<
未通过某些要求检查。必须先满足这些 要求,
然后才能继续安装,
是否继续? (y/n) [n] y
>>> 忽略未通过的必需先决条件。继续...
准备从以下地址启动 Oracle Universal Installer /tmp/OraInstall2022-08-10_10-40-17PM. 请稍候...[oracle@localhost database]$ Exception in thread "main" java.lang.UnsatisfiedLinkError: /tmp/OraInstall2022-08-10_10-40-17PM/jdk/jre/lib/amd64/libawt_xawt.so: libXrender.so.1: 无法打开共享对象文件: 没有那个文件或目录
at java.lang.ClassLoader$NativeLibrary.load(Native Method)
at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1941)
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1824)
at java.lang.Runtime.load0(Runtime.java:809)
at java.lang.System.load(System.java:1086)
at java.lang.ClassLoader$NativeLibrary.load(Native Method)
at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1941)
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1845)
at java.lang.Runtime.loadLibrary0(Runtime.java:870)
at java.lang.System.loadLibrary(System.java:1122)
at java.awt.Toolkit$3.run(Toolkit.java:1636)
at java.awt.Toolkit$3.run(Toolkit.java:1634)
at java.security.AccessController.doPrivileged(Native Method)
at java.awt.Toolkit.loadLibraries(Toolkit.java:1633)
at java.awt.Toolkit.<clinit>(Toolkit.java:1668)
at com.jgoodies.looks.LookUtils.isLowResolution(LookUtils.java:484)
at com.jgoodies.looks.LookUtils.<clinit>(LookUtils.java:249)
at com.jgoodies.looks.plastic.PlasticLookAndFeel.<clinit>(PlasticLookAndFeel.java:135)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:348)
at javax.swing.SwingUtilities.loadSystemClass(SwingUtilities.java:1874)
at javax.swing.UIManager.setLookAndFeel(UIManager.java:582)
at oracle.install.commons.util.Application.startup(Application.java:917)
at oracle.install.commons.flow.FlowApplication.startup(FlowApplication.java:181)
at oracle.install.commons.flow.FlowApplication.startup(FlowApplication.java:198)
at oracle.install.commons.base.driver.common.Installer.startup(Installer.java:566)
at oracle.install.ivw.db.driver.DBInstaller.startup(DBInstaller.java:127)
at oracle.install.ivw.db.driver.DBInstaller.main(DBInstaller.java:165)
出现上面的问题是因为安装需要图像化界面,解决方法是:yum groupinstall "X Window System" -y
安装该程序以支持图形化界面即可,不过安装之后,自己电脑需要安装Xming
软件,且需要xshell软件勾选X11转发
数据库使用相关操作:
#进入oracle
sqlplus / as sysdba
#创建用户
create user user40 identified by user40;
#12c使用 create user c##user40 identified by user40;
#用户授权
grant connect,resource,dba to user40;
#删除用户
drop user user_name;
#删除用户并删除用户下所有数据表
drop user user_name cascade;
#执行sql脚本
SQL>conn user40/user40;
SQL>@/sqlpath/your_sql_sheet.sql;
#启动监听
lsnrctl start
#查看监听状态
lsnrctl status
#关闭监听
lsnrctl stop
最后
以上就是知性皮卡丘为你收集整理的Centos7安装oracle12C的全部内容,希望文章能够帮你解决Centos7安装oracle12C所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复