目录

安装

系统配置

安装前装备

安装依赖包

创建用户和组

修改内核参数

修改系统资源限制

创建安装目录及设置权限

设置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. NC15434 wyh的迷宫

    题目链接 题目 题目描述 给你一个n*m的迷宫,这个迷宫中有以下几个标识: s代表起点 t代表终点 x代表障碍物 .代表空地 现在你们涵哥想知道能不能从起点走到终点不碰到障碍物(只能上下左右进行移动, ...

  2. NVME(学习笔记一)—概述

    NVMe概述 NVMe是一个针对基于PCIe的固态硬盘的高性能的.可扩展的主机控制器接口. NVMe的显著特征是提供多个队列来处理I/O命令.单个NVMe设备支持多达64K个I/O 队列,每个I/O队 ...

  3. Python递归遍历目录并删除文件中的前N行

    1 import os 2 3 # 遍历目录下的所有文件 4 def check_file(file_path): 5 os.chdir(file_path) 6 print(os.path.absp ...

  4. openai chatGPT 原理通俗介绍

    引言 近年来,随着深度学习技术的不断发展,自然语言处理(NLP)领域取得了长足的进步.ChatGPT(Generative Pre-trained Transformer)作为一种先进的语言生成模型, ...

  5. 玩转 CMS2

    玩转 CMS2 上篇研究了样式.请求.evn.mock,感觉对效率的提升没有太明显作用. 比如某个工作需要2天,现在1天可以干完,这就是很大的提升. 提高效率的方法有代码复用.模块化.低代码工具. 目 ...

  6. Fiddler捕获Java发送的HttpURLConnection请求

    1.说明 平常使用Fiddler抓包工具查看浏览器的请求和响应信息很方便, 但有时候我们也需要拦截java代码执行的http请求. 以便更好的调试程序.具体方法如下: 2.编写Java代码 // 配置 ...

  7. 学习go语言编程之函数

    函数定义 函数的基本组成:关键字func,函数名,参数列表,返回值,函数体,返回语句. 示例如下: func Add(a int, b int) (ret int, err error) { if a ...

  8. python操作txt文件,去除文件中的隔行空行

    conn = re.sub(result, '\r\n', content) res = "".join( [s for s in conn.strip().splitlines( ...

  9. git 多系统复用账号

    重装系统前请备份~/.ssh下的公钥私钥文件,重装系统后,请使用以下方法复用好之前的key 将备份好的key copy至~/.ssh下 将私钥id_rsa的文件属性改为600:sudo chmod 6 ...

  10. 前后端分离项目(七):实现"添加"功能(前端视图)

    好家伙,本篇用于测试"添加"接口,为后续"用户注册"功能做铺垫   (完整代码在最后) 我们要实现"添加"功能 老样子我们先来理清一下思路, ...