目录

安装

系统配置

安装前装备

安装依赖包

创建用户和组

修改内核参数

修改系统资源限制

创建安装目录及设置权限

设置oracle环境变量

安装Oracle

一些参考

compat-libstdc++ 老是装不上

pdksh-5.2.14-37.el5_8.1.x86_64.rpm

没有网络的情况下安装依赖包

提示:检查监视器: 监视器配置至少必须显示 256 种颜色。。。解决办法

linux通过一根网线与笔记本直连上网

设置sqlplus中的退格键

查询表空间

检查oracle死锁

System.Data.OracleClient 需要 Oracle 客户端软件 8.1.7 或更高版本


安装

系统配置

操作系统:CentOS6.5_x64

安装前装备

#关闭防火墙

#service iptables stop

#修改主机名

[root@oracledb~]# sed -i "s/HOSTNAME=localhost.localdomain/HOSTNAME=oracledb/" /etc/sysconfig/network

[root@oracledb ~]# hostname oracledb

#添加主机名与IP对应记录

[root@oracledb ~]# vi /etc/hosts

127.0.0.1  oracledb

#关闭Selinux

[root@oracledb ~]# sed -i "s/SELINUX=enforcing/SELINUX=disabled/" /etc/selinux/config 

[root@oracledb ~]# setenforce 0

安装依赖包

#需要在能上网的情况下进行
[root@oracledb ~]# yum -y install gcc gcc-c++ make binutil scompat-libstdc++-33 elfutils-libelf elfutils-libelf-devel glibc glibc-common glibc-devel libaio libaio-devel libgcc libstdc++ libstdc++-devel unixODBC unixODBC-devel

创建用户和组

 #sysctl -p
#groupadd -g 200 oinstall
#groupadd -g 201 dba
#useradd -u 440 -g oinstall -G dba oracle
#passwd oracle

修改内核参数

#vi /etc/sysctl.conf  #末尾添加如下
net.ipv4.ip_local_port_range= 9000 65500
fs.file-max = 6815744
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.core.rmem_default=262144
net.core.wmem_default=262144
net.core.rmem_max=4194304
net.core.wmem_max=1048576
fs.aio-max-nr = 1048576
vm.dirty_background_ratio=3
vm.dirty_ratio=5
vm.min_free_kbytes = 1048576

修改系统资源限制

#vi /etc/security/limits.conf  #末尾添加如下
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536 #vi /etc/pam.d/login
session required pam_namespace.so #下面添加一条pam_limits.so
session required pam_limits.so #vi /etc/profile
if [ $USER = "oracle" ] || [ $USER = "grid" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -u 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
umask 022
fi

创建安装目录及设置权限

#mkdir /data1/
#mkdir /data1/oracle/
#mkdir /data1/oracle/app/
#mkdir /data1/oracle/oradata/
#chmod 755 /data1/oracle/
#chmod 775 /data1/oracle/app/
#chown oracle.oinstall -R /data1/oracle/

设置oracle环境变量

#su - oracle
#vi ~/.bash_profile
export ORACLE_BASE=/data1/oracle/app
export ORACLE_HOME=$ORACLE_BASE/product/12.1.0/dbhome_1
export PATH=$PATH:$ORACLE_HOME/bin
export ORACLE_SID=orcl
#source .bash_profile #立即生效

安装Oracle

下载并解压:

下载压缩包放在/tmp 路径下

[root@oracledb~]# xhost +  #使所有用户都能访问图形桌面
[root@oracledb~]# su –oracle
[oracle@oracle~]#./tmp/database/runInstaller

运行过程会提示让你用root账户执行2个脚本,你将脚本的文件拿下来,在root账户下执行即可。

一些参考

开启、关闭数据库

1)切换用户
su - oracle 2)命令行启动监听
lsnrctl 
>start #启动
>stauts #查看状态
>exit #退出 3)启动数据库
sqlplus "/as sysdba"
>startup 4)关闭数据库
sqlplus "/as sysdba"
>shutdown immediate

compat-libstdc++ 老是装不上

在Linux上安装Oracle时,检测软件包 compat-libstdc++时老是显示没有安装,重新从网上下载了最新的安装包后虽然显示安装成功了,但是重新检测还是显示没有安装。最后Google到了结果,原因是,检测的时候应该使用:

rpm -qa 'compat-libstdc++*'

而非

rpm -q compat-libstdc++

pdksh-5.2.14-37.el5_8.1.x86_64.rpm

pdksh-5.2.14-37.el5_8.1.x86_64.rpm Oracle安装时需要安装的包
rpm –qa|grep pdksh #查看是否安装
rpm –ivh pdksh-5.2.14-37.el5_8.1.x86_64.rpm #安装,冲突时rpm -e 卸载冲突的包

没有网络的情况下安装依赖包

在没有网络的情况下可以从启动优盘或光盘中将Packages文件夹拷贝到目标机器上。

Packages中都是rmp包

#检查
rpm -q binutils compat-libstdc++ gcc gcc-c++ glibc glibc-devel ksh libaio libaio-devel libgcc libstdc++ libstdc++-devel libXext libXtst libX11 libXau libXi make sysstat #cd 到拷贝的路径中,按照以下顺利安装。
rpm -ivh compat-libstdc++-33-3.2.3-61.x86_64.rpm
rpm -ivh libaio-0.3.107-10.el6.x86_64.rpm
rpm -ivh libaio-devel-0.3.107-10.el6.x86_64.rpm
rpm -ivh mpfr-2.4.1-6.el6.x86_64.rpm
rpm -ivh ppl-0.10.2-11.el6.x86_64.rpm
rpm -ivh cloog-ppl-0.15.7-1.2.el6.x86_64.rpm
rpm -ivh cpp-4.4.7-4.el6.x86_64.rpm
rpm -ivh gcc-4.4.7-4.el6.x86_64.rpm
rpm -ivh libstdc++-devel-4.4.7-4.el6.x86_64.rpm
rpm -ivh gcc-c++-4.4.7-4.el6.x86_64.rpm
rpm -ivh compat-libstdc++-33-3.2.3-69.el6.x86_64.rpm
rpm -ivh ksh-20120801-10.el6.x86_64.rpm

提示:检查监视器: 监视器配置至少必须显示 256 种颜色。。。解决办法

切换到root用户
# su root # xhost +
提示:xhost: unable to open display “” # export DISPLAY=:0.0
# xhost +
提示:access control disabled, clients can connect from any host 切换oracle用户
# su – oracle 再执行# sh runInstaller
问题解决! 出现乱码则设置
export LANG="en_US.UTF-8"

linux通过一根网线与笔记本直连上网

首先将笔记本(笔记本IP为11.101.9.20)的无线网络共享。
然后在linux输入
route -net 11.101.9.100 netmask 255.255.255.0 gw 11.101.9.104 route add default gw 11.101.9.104
注:
11.101.9.100(与笔记本IP一个网段)
11.101.9.104(笔记本的IP)
然后重启网卡 /etc/init.d/network restart

设置sqlplus中的退格键

有些时候当你使用sqlplus登录到数据库中的时候,敲错了命令想要删除修改的时候,发现以前敲入的字符无法删除,反而多出了^H字符。
SQL> show^H^H
[oracle@zeng ~]$ stty -a //显示所有的终端设置。其中会有这样的一个字段 erase = ^?;表示终端的清除字符的方式是Ctrl+Backspace。
可以修改成我们经常使用的Backspace键。
[oracle@zeng ~]$ stty erase ^H
在进入sqlplus中就可以按照我们熟悉的方式删除敲错的字符了。当你注销linux会话再次登录linux系统进入sqlplus的时候问题又来了。
SQL> show^H^H
想要让该设置在每次登录linux系统创建会话的时候生效,可以写入.bash_profile文件中,在执行生效。
[oracle@zeng ~]$ vi .bash_profile //加入stty erase ^H
[oracle@zeng ~]$ . .bash_profile

查询表空间

SELECT UPPER(F.TABLESPACE_NAME) "表空间名",
  D.TOT_GROOTTE_MB "表空间大小(M)",
  D.TOT_GROOTTE_MB - F.TOTAL_BYTES "已使用空间(M)",
  TO_CHAR(ROUND((D.TOT_GROOTTE_MB - F.TOTAL_BYTES) / D.TOT_GROOTTE_MB * 100,2),'990.99') || '%' "使用比",
  F.TOTAL_BYTES "空闲空间(M)",
  F.MAX_BYTES "最大块(M)"
  FROM (SELECT TABLESPACE_NAME,
  ROUND(SUM(BYTES) / (1024 * 1024), 2) TOTAL_BYTES,
  ROUND(MAX(BYTES) / (1024 * 1024), 2) MAX_BYTES
  FROM SYS.DBA_FREE_SPACE
  GROUP BY TABLESPACE_NAME) F,
  (SELECT DD.TABLESPACE_NAME,
   ROUND(SUM(DD.BYTES) / (1024 * 1024), 2) TOT_GROOTTE_MB
  FROM SYS.DBA_DATA_FILES DD
  GROUP BY DD.TABLESPACE_NAME) D
  WHERE D.TABLESPACE_NAME = F.TABLESPACE_NAME
  ORDER BY 1;

检查oracle死锁

查看锁表进程SQL语句1:
select sess.sid,
sess.serial#,
lo.oracle_username,
lo.os_user_name,
ao.object_name,
lo.locked_mode
from v$locked_object lo,
dba_objects ao,
v$session sess
where ao.object_id = lo.object_id and lo.session_id = sess.sid; 查看锁表进程SQL语句2:
select * from v$session t1, v$locked_object t2 where t1.sid = t2.SESSION_ID; 杀掉锁表进程:
如有记录则表示有lock,记录下SID和serial# ,将记录的ID替换下面的738,1429,即可解除LOCK
alter system kill session '738,1429';

System.Data.OracleClient 需要 Oracle 客户端软件 8.1.7 或更高版本

  原因:NTFS权限问题,在ORACLE9I时总是遇到

  解决方法:

  1、以管理员的用户登录;

  2、找到ORACLE_HOME文件夹(我的是C:\oracle\ora92),点右键,选属性--安全,在组或用户栏中选“Authenticated Users”,在下面权限列表中把“读取和运行”的权限去掉,再按应用;重新选上“读取和运行”权限,点击应用;选权限框下面的“高级”按钮,确认“Authenticated Users”后面的应用于是“该文件夹、子文件夹及文件”,按确定把权限的更改应用于该文件夹;

  3、重新启动计算机,让权限设置生效(请注意,这一步很重要);

  4、登录后运行asp.net应用,正常取得Oracle数据库的数据。

Linux安装Oracle12C及一些参考的更多相关文章

  1. CC++初学者编程教程(14) Redhat linux安装Oracle12c

    1选择虚拟机的设置 2 设置共享文件夹 3 使用共享文件夹向导 4 选择主机路径 5 启用文件共享 6 设置好文件共享以后,关闭虚拟机的设置 7 开启虚拟机 8 登陆 9输入密码 10 安装vmwar ...

  2. linux安装oracle12c

    参考: https://blog.csdn.net/who__are__you_/article/details/79178303 记录:

  3. 【Oracle RAC】Linux系统Oracle12c RAC安装配置详细记录过程V2.0(图文并茂)

    [Oracle RAC]Linux系统Oracle12c RAC安装配置详细过程V2.0(图文并茂) 2 Oracle12c RAC数据库安装准备工作2.1 安装环境介绍2.2 数据库安装软件下载3 ...

  4. Symantec Backup Exec 2010 Agent For Linux安装

    以前写过一篇文章介绍过Symantec Backup Exec 2012 Agent For Linux安装安装,今天介绍一下Symantec Backup Exec 2010 Agent For L ...

  5. Symantec Backup Exec 2012 Agent For Linux安装

    Backup Exec 2012 介绍 Backup Exec 2012 是一种为虚拟和物理环境提供保护的集成产品,能够简化备份和灾难恢复,并提供了无可匹敌的恢复功能.借助于强大的 Symantec ...

  6. 自己瞎捣腾的Win7下Linux安装之路-----理论篇

    接着上回说道,我把双系统做好啦,开心.... 之后我就在想几个问题: 1.在Ubuntu装好后,重启电脑却还是win7,等我用EasyBCD之后,才可选择使用装好的Ubuntu呢? 2.在用EasyB ...

  7. CentOs5.8下安装Oracle12C

    12C安装向导: http://docs.oracle.com/database/121/LTDQI/toc.htm 12C下载地址: http://www.oracle.com/technetwor ...

  8. 轻松解决Linux安装Eclipse方法

    随着Linux的发展,很多人开始学习Linux系统,你了解Linux系统么?你是Linux系统的应用者么?本文为你详细介绍Linux安装Eclipse,为你在学习Linux安装Eclipse时起一定的 ...

  9. Ubuntu/linux 安装 kernel-devel

    这个问题,需要安装与系统内核配套的开发包. 查看内核: uname -r 内核头文件C header files下载地址: http://rpmfind.net/linux/rpm2html/sear ...

  10. Arch Linux 安装记录

    Arch Linux 安装记录 基本上参考wiki上的新手指南,使用arch 2014.6.1 iso安装 设置网络 有线网络 Arch Linux 默认开启DHCP. 静态ip 首先关闭DHCP:s ...

随机推荐

  1. CSS浮动&定位&布局

    浮动简介 浮动最早起设计出来是为了实现文字环绕图片或者文字环绕的效果,现在浮动是主流的页面布局方式之一 float:浮动属性,值可以是left.right对应向左和向右浮动 元素浮动之后的特点 脱离文 ...

  2. 端口碰撞Port Knocking和单数据包授权SPA

    端口碰撞技术 Port knocking 从网络安全的角度,服务器开启的端口越多就越不安全,因此系统安全加固服务中最常用的方式,就是先关闭无用端口,再对提供服务的端口做访问控制.而作为远程管理与维护的 ...

  3. 【Unity3D】Unity3D技术栈

    1 前言 ​ 本文梳理了笔者在学习 Unity3D 的过程中,对 Unity3D 的理解和学习路线,以帮助读者循序渐进地学习 Unity3D,后续笔者仍会持续更新 Unity3D 相关技术栈,并同步到 ...

  4. SpringBoot使用git-commit-id-maven-plugin打包

    简介 git-commit-id-maven-plugin 是一个maven 插件,用来在打包的时候将git-commit 信息打进jar中. 这样做的好处是可以将发布的某版本和对应的代码关联起来,方 ...

  5. spring boot实现邮箱验证码注册

    最近在设计自己的博客系统,涉及到用户注册与登录验证. 注册这地方我先采用最传统的邮箱验证码方式.具体的实现方式如下: 1.有关如何配置spring boot发送邮件,请参考我的另一篇文章: https ...

  6. TerminateJobObject是使用

    注意: AssignProcessToJobObject仅适用于win32 desktop app, 比如notepad是适用的,calculator是不适用的 下面的demo是将notepad的句柄 ...

  7. RK3568开发笔记(二):入手RK3568开发板的套件介绍、底板介绍和外设测试

    前言   本篇主要介绍RK3568芯片和入手开发板的底板介绍以及开发板的外设.   开发板   笔者的开发板是全套+10.1寸屏. 开发板实物     开发板资源    开发版本提供资料     开发 ...

  8. zlib开发笔记(一):zlib库介绍、编译和工程模板

    前言   Qt使用一些压缩解压功能,介绍过libzip库编译,本篇说明zlib库.   zlib库   zlib被设计为一个免费的,通用的,法律上不受限制的-即不受任何专利保护的无损数据压缩库,几乎可 ...

  9. 【Azure Developer】示例: 在中国区调用MSGraph SDK通过User principal name获取到User信息,如Object ID

    问题描述 示例调用MSGraph SDK通过User principal name获取到User信息,如Object ID. 参考资料 选择 Microsoft Graph 身份验证提供程序 : ht ...

  10. [C++逆向] 7 变量在内存中的位置和访问方式

    目录 全局变量和局部变量的区别 局部静态变量 有意思的 堆变量 变量类型 作用域 可访问 全局变量 进程作用域 整个进程可访问 静态变量 文件作用域 当前代码文件可访问 局部变量 函数作用域 函数内可 ...