技术标签: rhel6安装oracle
在RHEL6中安装Oracle 11g R2数据库
2011-10-10 TsengYia#126.com http://tsengyia.blog.chinaunix.net/
##############################################################################
系统环境:
RHEL 6.1 [2.6.32-131.0.15.el6.i686]
软件环境:
—— 来自RHEL 6.1光盘的RPM软件包
包组:Development tools
包:compat-libstdc++-33、elfutils-libelf-devel、libaio-devel、sysstat、unixODBC-devel
—— 来自RHEL 5.5光盘的RPM软件包
./Server/pdksh-5.2.14-36.el5.i386.rpm
—— 从下载的Oracle 11g安装包
linux_11gR2_database_1of2.zip
linux_11gR2_database_2of2.zip
##############################################################################
一、准备Oracle 11g R2的安装条件
包括软硬件配置、用户环境、软件环境等,其中RHEL 6.1中的ksh环境未能被安装程序识别,因此改用RHEL 5.5中的pdksh代替。
1. 内存及交换空间
物理内存1GB以上,交换空间大约为物理内存的2倍。
2. 安装目录、/tmp目录
安装目录(/opt/oracle)建议有8GB以上、/tmp目录建议有1GB以上可用空间。
3. 主机名、IP地址
提前确定好,例如dbserver,完成安装以后不要再改主机名。
4. 需要的软件环境
[root@dbserver ~]# yum -y install binutils compat-libstdc++ compat-libstdc++-33 elfutils-libelf-devel gcc gcc-c++ glibc-devel glibc-headers ksh libaio-devel libstdc++-devel make sysstat unixODBC-devel
[root@dbserver ~]# rpm -e ksh
[root@dbserver ~]# rpm -ivh .../pdksh-5.2.14-36.el5.i386.rpm
[root@dbserver ~]# yum -y install java-1.6.0 //准备系统自身的Java中文环境
[root@dbserver ~]# cd /usr/lib/jvm/jre-1.6.0/lib/
[root@dbserver lib]# mv fontconfig.bfc fontconfig.bfc.origin
[root@dbserver lib]# cp fontconfig.RedHat.6.0.bfc fontconfig.bfc
5. 创建安装用户
[root@dbserver ~]# groupadd oinstall //安装组
[root@dbserver ~]# groupadd dba //管理组
[root@dbserver ~]# useradd -g oinstall -G dba oracle //运行用户
[root@dbserver ~]# passwd oracle
[root@dbserver ~]# vi ~oracle/.bash_profile
......
umask 022
export ORACLE_BASE=/opt/oracle
export ORACLE_SID=orcl //要使用的数据库实例名称
export DISPLAY=:0.0 //默认的显示终端号
export LANG=zh_CN.UTF-8 //确定要使用的语言环境
[root@dbserver ~]# mkdir /opt/oracle //创建基本目录
[root@dbserver ~]# chown -R oracle:oinstall /opt/oracle/
[root@dbserver ~]# chmod -R 775 /opt/oracle/
6. 调整内核及会话限制(不低于以下数值)
[root@dbserver ~]# vi /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 = 1048576
[root@dbserver ~]# sysctl -p
[root@dbserver ~]# vi /etc/pam.d/login
......
session required pam_limits.so
[root@dbserver ~]# vi /etc/security/limits.conf
oracle soft nproc 8192
oracle hard nproc 16384
oracle soft nofile 32768
oracle hard nofile 65536
二、安装Oracle 11g数据库
由用户oracle启动安装脚本(在图形桌面环境执行),加载中文安装界面。如果先以root用户登入图形桌面,再su切换为oracle用户,则还应提前做好xhost授权,以便oracle用户能够使用X显示终端。
1. 图形化安装过程
[root@dbserver ~]# xhost +
access control disabled, clients can connect from any host
[root@dbserver ~]# cd /var/ftp/pub/
[root@dbserver pub]# unzip linux_11gR2_database_1of2.zip
[root@dbserver pub]# unzip linux_11gR2_database_2of2.zip
[root@dbserver pub]# su - oracle
[oracle@dbserver ~]$ cd /var/ftp/pub/database/
[oracle@dbserver database]$ ./runInstaller -jreLoc /usr/lib/jvm/jre-1.6.0
正在启动Oracle universal Installer ...
......
准备从以下地址启动Oracle Universal Installer /tmp/OraInstall2011-10-10_07-27-32PM.
请稍候...
(1)根据安装程序提示,创建和配置数据库-->服务器类-->单实例数据库安装-->典型安装-->企业版
(2)设置好管理口令,将清单目录改为/opt/oracle/oraInventory,确认后正式开始安装过程
(3)最后根据提示由root用户执行相应的安装后脚本:
/opt/oracle/oraInventory/orainstalRoot.sh
/opt/oracle/product/11.2.0/dbhome_1/root.sh
2. 确认安装结果
在浏览器中访问,登录OEM管理平台(sys AS SYSDBA),确认orcl实例运行正常。
3. 优化服务运行环境
[root@dbserver ~]# vi /etc/profile
......
export ORACLE_BASE=/opt/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1
export ORACLE_OWNER=oracle
export ORACLE_SID=orcl
export ORACLE_TERM=xterm
export PATH=$PATH:$ORACLE_HOME/bin
[root@dbserver ~]# source /etc/profile
[root@dbserver ~]# vi /etc/oratab //设置orcl实例随oracle服务一起启动
orcl:/opt/oracle/product/11.2.0/dbhome_1:Y
[root@dbserver ~]# vi /etc/init.d/oracle //编写oracle服务控制脚本
#!/bin/bash
#### 2011.10.10 by TsengYia ####
# chkconfig: 35 90 10
# description: Oracle Database Service Daemon.
ORCL_BASE="/opt/oracle"
ORACLE_HOME=$ORCL_BASE/product/11.2.0/dbhome_1
ORACLE_OWNER=oracle
case "$1" in
start)
su - $ORACLE_OWNER -c "$ORACLE_HOME/bin/lsnrctl start" #//启用监听器
su - $ORACLE_OWNER -c "$ORACLE_HOME/bin/dbstart $ORACLE_HOME" #//启用数据库程序
su - $ORACLE_OWNER -c "$ORACLE_HOME/bin/emctl start dbconsole" #//启用OEM控制台
;;
stop
su - $ORACLE_OWNER -c "$ORACLE_HOME/bin/emctl stop dbconsole" #//停止OEM控制台
su - $ORACLE_OWNER -c "$ORACLE_HOME/bin/dbshut $ORACLE_HOME" #//停止数据库程序
su - $ORACLE_OWNER -c "$ORACLE_HOME/bin/lsnrctl stop" #//停止监听器
;;
status)
if(pgrep "tnslsnr" && netstat -anpt | grep ":1521") &> /dev/null
then
echo "Oracle 11g Net Listener is running."
else
echo "Oracle 11g Net Listener is not running."
fi
if(netstat -anpt | grep ":1158" && netstat -anpt | grep ":5520") &> /dev/null
then
echo "Oracle 11g Enterprise Manager is running."
else
echo "Oracle 11g Enterprise Manager is not running."
fi
;;
restart)
$0 stop
$0 start
;;
*)
echo "Usage: $0 {start|stop|restart|status}"
exit 1
;;
esac
exit 0
[root@dbserver ~]# chmod +x /etc/init.d/oracle
[root@dbserver ~]# chkconfig --add oracle
三、Oracle 11g的基础操作
1. 使用sqlplus命令行工具
[root@dbserver ~]# sqlplus sys AS SYSDBA
Enter password: //输入管理口令
......
SQL> HELP INDEX;
@ COPY PAUSE SHUTDOWN
@@ DEFINE PRINT SPOOL
......
COMPUTE LIST SET XQUERY
CONNECT PASSWORD SHOW
SQL> SHOW USER;
USER is "SYS"
2. 使用expdp进行逻辑备份(导出)
[root@dbserver ~]# mkdir /opt/mydbbackup //创建备份目录
[root@dbserver ~]# chown oracle:oinstall /opt/mydbbackup
[root@dbserver ~]# sqlplus sys AS SYSDBA
......
SQL> CREATE DIRECTORY dmpdir AS '/opt/mydbbackup'; //定义备份位置
Directory created.
SQL> GRANT read,write ON DIRECTORY dmpdir TO sysman; //授权备份用户
Grant succeeded.
[root@dbserver ~]# expdp sysman DIRECTORY=dmpdir DUMPFILE=orcl20111011.dmp
[root@dbserver ~]# ls -lh /opt/mydbbackup/orcl20111011.dmp
-rw-r----- 1 oracle oinstall 51M 10月 11 13:24 /opt/mydbbackup/orcl20111011.dmp
3. 使用impdp进行逻辑恢复(导入,目标库最好已为空)
[root@dbserver ~]# impdp sysman DIRECTORY=dmpdir DUMPFILE=orcl20111011.dmp REUSE_DATAFILES=Y TABLE_EXISTS_ACTION=REPLACE
4. ......
##############################################################################
阅读(2245) | 评论(3) | 转发(1) |
文章浏览阅读1.3w次。000013 001http://people.sina.com.cn/forum.html新浪网论坛 000015 002http://club.sohu.com/搜狐社区 000020 003http://bj.163.com/网易北京社区 000043 004http://bbs.tom.com/bbs.phpTOM海云天论坛 000143 005http://bbs.china.com/中_77论坛
文章浏览阅读1.3w次,点赞6次,收藏43次。python-字符串中使用%%有什么作用?%操作符的各种用法小结_python %%
文章浏览阅读1.2k次。从文本读取成绩并计算平均分,将平均分写入文本文件保存。【学习的细节是欢悦的历程】Python官网Free:大咖免费“圣经”教程python 完全自学教程,不仅仅是基础那么简单……自学并不是什么神秘的东西,一个人一辈子自学的时间总是比在学校学习的时间长,没有老师的时候总是比有老师的时候多。——华罗庚HOT好文力荐从文本读取成绩并计算平均分统计平均分(将平均分写入文本文件保存)本文质量分:90目 录。_包含学生考试成绩的源文本文件中提取并计算平均分
文章浏览阅读2.1k次,点赞5次,收藏10次。简介《FairMOT:A Simple Baseline for Multi-Object Tracking》是一个online的多目标跟踪(MOT)算法,基于TBD(Traking-by-Detection)的策略,FairMOT主要就是基于JDE做的改进,可以简单的理解为,FairMOT是将JDE的YOLOv3的主干,改成了CenterNet,也就是将检测的方法由Anchor-base换成了Anchor-free,然后同样在已有检测模型上加了了embeeding分支,模型输出检测的结果和embeedi_fairmot实现mot评估
文章浏览阅读3.9k次。VS 2008 显示代码行数:开发环境C#,其他类同操作。工具-》选项-》文本编辑器-》C#里的显示“行号”勾上即可。-------------------------------------------------------------------------------------------------------改变VS程序风格:java风格: private v_vs2008显示行数
文章浏览阅读1.5k次,点赞21次,收藏29次。面试习题大总结,进来免费白嫖啦_前端实现填空题
文章浏览阅读1.2k次,点赞2次,收藏11次。clc,clear,close all;% 异或四点向量traind = [0,0,1,1;0,1,0,1];trainl = [0,1,1,0];% 创建一个前向BP网络 节点为2net = feedforwardnet(2);net.divideFcn=''; % **关键,关闭网络内部的训练集与结果错开的功能%% Trainnet = train(net,traind..._bp神经网络 matlab 用matlab工具箱 解决抑或问题
文章浏览阅读5.7k次,点赞3次,收藏13次。最新的PMP变更控制流程图,流程图根据清华大学副教授、光环国际杨述老师的视频制作,流程图制作工具是OmniGraffle。整体变更控制:实施整体变更控制是审查所有的变更请求、批准变更,管理对可交付成果、项目文件和项目管理计划的变更,并对变更处理结果进行沟通的过程。变更控制常见原因:变更控制常见原因变更控制流程图:4个角色:相关方、团队成员、项目经理、变更控制委员会。原文链接:https://www.ffeeii.com/1793.htmlPMP-变更控制流程图..._变更控制流程图
文章浏览阅读6k次,点赞4次,收藏17次。1 前言跟基于策略梯度的方法比起来,DQN在处理连续状态的问题中 是比较好的。(因为前者是计算Q-table,后者是计算Q-function。前者在状态空间连续的时候是很难计算的)。 同时,DQN是比较容易训练的:在 DQN 里面,你只要能够估计出Q函数,就保证你一定可以找到一个比较好的策略。也就是你只要能够估计出Q函数,就保证你可以改进策略。而估计Q函数这件事情,是比较容易的,因为它就是一个回归问题。在回归问题里面, 你可以轻易地知道模型学习得是不是越来越好,只要看那..._dqn连续动作
文章浏览阅读1.2w次,点赞4次,收藏24次。获取文件的最后一次修改时间,用于判断可能的使用场景:1、文件是否被修改了2、新的内容是否写入文件了3、对比时间来找到最后被修改的文件等等...#include <stdio.h>#include <sys/types.h>#include <sys/stat.h>#include <unistd.h>int get_old_file_tim..._c语言获取文件修改时间
文章浏览阅读927次。Sql注入之sqlmap+dvwa实例演练 相信很多同学都已经知道了什么是sql注入,也明白为什么会发生sql注入。也可以通过在输入框和url中“手工”注入,来实现绕过登录、非法修改这样有趣又实用的功能。但这些还远不能让我们感觉到sql注入的巨大威力。你也一定听过各种各样的新闻报道xxx网站被黑,上百万用户数据泄露。想知道它们是如何获得这些数据的吗?不讲过多原理,就和实验楼的【S..._模拟一次sql注入操作实例dvwa
文章浏览阅读5.6k次。1,安装npm install --s vue-awesome-swiper2,在main.js中使用import vueAwesomeSwiper from 'vue-awesome-swiper'Vue.use(vueAwesomeSwiper);3,在页面使用<template> <div class="home"> <s..._vue swiper组件上下滑动全屏