Oracle 12c安装方法及一些使用问题

所属分类: 数据库 / oracle 阅读数: 1038
收藏 0 赞 0 分享

Linux Centos6.5 64bit下安装oracle12c:

groupadd oinstall
groupadd dba
mkdir -p /u01/oracle
useradd -g oinstall -G dba -d /u01/oracle oracle
(这里不是一定要把home目录更改到/u01/oracle,默认也可。)
把下面三个文件复制到 /u01/oracle目录下
[root@oracle /]# cd /etc/skel/
[root@oracle skel]# ll -a
-rw-r--r--. 1 root root 18 7月 18 2013 .bash_logout
-rw-r--r--. 1 root root 176 7月 18 2013 .bash_profile
-rw-r--r--. 1 root root 124 7月 18 2013 .bashrc
注:useradd添加用户时,会自动从这个目录下的文件复制到用户的家目录
password oracle
chown -R oracle:oinstall /u01
chmod -R 775 /u01/

/*安装vnc*/

yum -y install tigervnc-server
vncserver 回车
输入密码
ps -ef | grep vnc
vnc客户端连接:ip:1

检测是否有安装以下程序:

binutils-2.17.50.0.6
compat-libstdc++-33-3.2.3 -
elfutils-libelf-0.125
elfutils-libelf-devel-0.125 -
elfutils-libelf-devel-static-0.125 -
gcc-4.1.2 -
gcc-c++-4.1.2 -
glibc-2.5-24
glibc-common-2.5
glibc-devel-2.5
glibc-headers-2.5
kernel-headers-2.6.18
ksh-20060214 -
libaio-0.3.106
libaio-devel-0.3.106 -
libgcc-4.1.2
libgomp-4.1.2
libstdc++-4.1.2
libstdc++-devel-4.1.2 -
make-3.81
sysstat-7.0.2 
unixODBC-2.2.11 -
unixODBC-devel-2.2.11 -

修改 /etc/sysctl.conf 文件,加上如下参数

fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 536870912
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 = 1048586

为使上述配置生效而不重启系统,执行如下命令
# /sbin/sysctl -p

修改用户限制

root用户:修改 /etc/security/limits.conf 文件,加上下面的参数

oracle   soft nproc 2047
oracle   hard nproc 16384
oracle   soft nofile 1024
oracle   hard nofile 65536

修改用户验证选项
root用户下:修改/etc/pam.d/login文件加上如下参数

session required  pam_limits.so

修改用户配置文件
root用户下:修改/etc/profile文件加入如下参数:

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

修改oracle用户bash_profile:
$ vi .bash_profile
增加如下内容,主要是修改

export ORACLE_BASE=/u01 
export ORACLE_HOME=$ORACLE_BASE/product/12.1.0/db_1
export ORACLE_SID=hxw168 
export PATH=$ORACLE_HOME/bin:$PATH:$HOME/bin

安装oracle:

安装oracle无法使用命令/usr/bin/xdpyinfo自动检查显示器颜色:

[root@oracle /]# xdpyinfo | grep "name of display"
name of display: :1.0
[root@oracle /]# 
在Oracle用户下执行命令:
export DISPLAY=:1.0 (上面name of display:后面的 :1.0)

prvf-0002:无法检索本地节点名

host文件 ip与名称对应
192.168.198.188 oracle

SQL> create user admin identified by zerostudy;
create user admin identified by zerostudy
*
ERROR at line 1:
ORA-65096: invalid common user or role name


SQL> !oerr ora 65096
65096, 00000, "invalid common user or role name"
// *Cause: An attempt was made to create a common user or role with a name
// that wass not valid for common users or roles. In addition to
// the usual rules for user and role names, common user and role
// names must start with C## or c## and consist only of ASCII
// characters.
// *Action: Specify a valid common user or role name.
//

解决方法:https://www.jb51.net/article/92720.htm

调整虚拟机的内存到600多M(原来1G多),启动oracle时提示:
SQL> startup
ORA-00845: MEMORY_TARGET not supported on this system

SQL> !oerr ora 00854
00854, 00000, "ASM IOServer Instance Fence monitor process terminated."
// *Cause: The ASM IOServer Fence monitor process died.
// *Action: Warm start the instance.

原因就是Linux系统的shm的大小比SGA设置的小造成的。
可以调整shm的大小:
vi /etc/fstab
修改如下行的设置
tmpfs /dev/shm tmpfs defaults 0 0
改成
tmpfs /dev/shm tmpfs defaults,size=6G 0 0
重新mount下shm使其生效
mount -o remount /dev/shm

TNS-12514: TNS:listener does not currently know of service requested in connect descriptor

需要更改listener.ora文件(跟径在$ORACLE_HOME/network/admin),然后重启lsnrctl

# Generated by Oracle configuration tools.
#LISTENER =
# (DESCRIPTION_LIST =
# (DESCRIPTION =
#  (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
#  (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.198.188)(PORT = 1521))
# )
# )
hxw168 =
 (DESCRIPTION_LIST =
 (DESCRIPTION =
  (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.198.188)(PORT = 1521))
 )
 )
 SID_LIST_hxw168=
 (SID_LIST =
 (SID_DESC=
  (ORACLE_HOME = /u01/app/product/12.1.0/db_1)
  (SID_NAME = hxw168)
 )
 )

oracle简单的启动脚本:

[root@oracle ~]# cat /etc/init.d/oracle 
su - oracle <<EOF
lsnrctl start
sqlplus / as sysdba
startup
EOF

本文出自 “尽管错,让我错到死!” 博客

更多精彩内容其他人还在看

VS2015连接Oracle数据库的详细步骤

这篇文章主要介绍了VS2015连接Oracle数据库的详细步骤,需要的朋友可以参考下
收藏 0 赞 0 分享

常用的Oracle doc命令(收藏)

这篇文章主要介绍了常用的Oracle doc命令(收藏)的相关资料,非常不错,具有参考借鉴价值,需要的朋友参考下吧
收藏 0 赞 0 分享

ORACLE SQL语句优化技术要点解析

这篇文章主要介绍了ORACLE SQL语句优化技术的相关内容,小编觉得挺不错的,在这里分享给大家,需要的朋友可以参考下。
收藏 0 赞 0 分享

ORACLE多条件统计查询的简单方法

这篇文章主要介绍了ORACLE多条件统计查询的简单方法,具有一定参考价值。这里给大家分享下,希望对大家有所帮助。
收藏 0 赞 0 分享

ORACLE批量导入图片到BLOB字段代码示例

这篇文章主要介绍了ORACLE批量导入图片到BLOB字段代码示例,此代码示例是文章作者的项目源码,具有一定参考价值,需要的朋友可以了解下。
收藏 0 赞 0 分享

PLSQL Developer登录的默认密码介绍

这篇文章主要介绍了PLSQL Developer登录的默认密码介绍,具有一定参考价值,需要的朋友可以了解下。
收藏 0 赞 0 分享

Oracle数据行拆分多行方法示例

oracle数据库使用过程中,怎样将一行或者多行数据分割成需要的多行数据,本文我们就来看看具体方法,需要的朋友可以参考。
收藏 0 赞 0 分享

Oracle表空间不足的两种解决办法

这篇文章主要介绍了Oracle表空间不足的两种解决办法,需要的朋友可以参考下
收藏 0 赞 0 分享

巧妙解决Oracle NClob读写问题(经验分享)

下面小编就为大家带来一篇巧妙解决Oracle NClob读写问题(经验分享)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

oracle执行update语句时卡住问题分析及解决办法

这篇文章主要介绍了oracle执行update语句时卡住问题分析及解决办法,涉及记录锁等相关知识,具有一定参考价值,需要的朋友可以了解。
收藏 0 赞 0 分享
查看更多