oracle-day1
今天的学习内容是oracle产品的三种安装方式,还有使用dbca静默建库
oracle产品的三种安装方式分别为:
1.图形化(Java向导)安装引导
2.使用应答文件静默安装
3.直接将装好的oracle复制一份放到另一台服务器安装
注意:
方法2和方法3的安装前提是:
配置好oracle安装所需要的前提:
前提为:
修改shell限制
vi /etc/security/limits.conf
-------------------------------------
oracle soft nofile 65536
oracle hard nofile 65536
oracle soft nproc 16384
oracle hard nproc 16384
上面的
oracle 为自定义的,随便定义
nofile为文件句柄数
nproc为进程数
修改内核参数
vi /etc/sysctl.conf
---------------------------------------------
kernel.shmmax = 4046471168
kernel.shmmni = 4096
kernel.shmall = 2097152
kernel.sem = 250 32000 100 128
fs.file-max = 6815744
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
fs.aio-max-nr = 1048576
---------------------------------------------
使内核参数生效
sysctl -p
创建相关的组:
oinstall --> 产品所有者
dba --> 数据库的安全审核
groupadd oinstall
groupadd dba
创建用户
useradd -g oinstall -G dba -m oracle
设置oracle用户的口令:
passwd oracle
创建安装数据库软件的目录:
mkdir -p /u01/app/oracle
chown -R oracle.oinstall /u01/app
修改oracle用户的系统环境变量
su - oracle
vi .bashrc
---------------------------------------------------------
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
export PATH=$ORACLE_HOME/bin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH
export ORACLE_SID=orcl
export ORACLE_OWNER=oracle
export ORACLE_TERM=vt100
export THREADS_FLAG=native
export LANG=en_US
---------------------------------------------------------
使环境变量生效:
source .bashrc
还有我们在安装oracle的时候需要提前装一下包。不然后面再装oracle的时候回报错
yum -y install binutils compat-db compat-libstdc++-296 compat-libstdc++-33
control-center gcc gcc-c++ glibc glibc-common libstdc++ libstdc++-devel make
pdksh sysstat xscreensaver setarch libaio libaio-devel libXp elfutils-libelf-devel
上面的包都可以通过yum安装,还有一个就是pdksh 包了,我们从网上下载一下
wget http://mirror.centos.org/centos/5/os/x86_64/CentOS/pdksh-5.2.14-37.el5_8.1.x86_64.rpm
rpm -ivh pdksh-5.2.14-37.el5_8.1.x86_64.rpm
接下来就是解压软件了。
解压完成以后会有database的目录
修改软件包目录的权限:
chown -R oracle.oinstall database
在root用户下打开普通用户调用Xserver的权利
ssh root@172.25.0.11 -X(root用户下图形连接到虚拟机)
xhost + (打开普通用户调用java画图形)
exit
ssh oracle@172.25.0.11 -X
这样我们就可以在终端使用oracle用户调用图形化了
调用安装程序:
cd ~/database
./runInstaller
接下来就是图形化安装了:
http://www.cnblogs.com/smail-bao/p/oracle.html
在生产上我我们就只安装oracle 的产品,不建库。所以我们install database software only
后面我们在使用dbca的方式建库
我们装到最后的时候会检查一下安装环境,回提示你需要装一些什么,回提示我们少一些c包等,还有pdksh
都给他装上,还有一个提示就是swap的警告,老师说这个不用管它,就是给swap设置成0也是没有问题的
还有撞到最后的时候
save Response File
保存的就是应答文件,这个我们可以使用这个文件使用静默方式来安装
现在我们来说以下静默的安装方式:
我们把之前安装的oracle给卸载掉
卸载oracle软件:
1.停止oem,我在生产一般都不装这个
emctl stop dbconsole db
2.停止监听
lsnrctl stop
3.停止数据库
sqlplus / as sysdba
shut immediate
删除相关文件
rm -fr /u01/app/*
rm -fr /etc/ora*
rm -f /usr/local/bin/corae
rm -f /usr/local/bin/dbhome
rm -f /usr/local/bin/oraenv
这个/usr/local/bin下的文件就是我们在装oracle的时候,我们执行到最后的时候,会让我们用root用户执行两个脚本,就会生成这些文件
cd /database
./runinstaller -silent -ignoreSysPrereqs -respanseFile /home/oracle/db.rsp
名词解释:
silent --->静默方式安装
ignoreSysPrereqs --》忽略系统预校验
-respanseFile --->指定你的应答文件的路径
.rsp ---》就是那个应答文件(这个应答文件不要有数据库,也就是只要oracle产品)
所以这里我们可以第一次装oracle的时候我们只装oracle的产品,然后保存一下应答文件,以后到
别的服务器上安装就快了。就不需要图形化了(不要Java引擎了)
以后在生产上只要修改一下这个应答文件就行了。根据生产需求修改
1.修改OUI安装向导保存的应答文件,指定数据库的初始口令
vim db.rsp
oracle.install.db.config.starterdb.password.ALL=Oracle11g
2.启动安装
cd ~/database
./runInstaller -silent -ignoreSysPrereqs -responseFile /home/oracle/db.rsp
这个时候我们可以top看一下有一个Java进程起来了,占用着大量的CPU
执行到最后的时候也要执行两个脚本,在root下执行后再在这个界面回车

还有最后一种安装方式就是拷贝安装了,我们直切拷贝本机的oracle目录和oraInventory两个目录到别的机器上,或者我们这个把这两个目录保存在一个地方,为了以后可以直接使用(干净的oracle产品,也就是刚刚安装好的oracle)
最后的安装oracle产品的两种方法要注意了,我要配好所有的环境和相关依赖包的安装,这些工作都得提前做好
在生产上提议使用静默安装和图形化安装
接下来要说的就是建库了:
这里我们使用dbca来建库,也有两种方式,一种是图形化,一种是静默方式来安装,图形化网上有很多的教程可以参考,这里我记录一下我是怎么学习静默方式建库的
dbca -silent -createDatabase -templateName /u01/app/oracle/product/11.2.0/db_1/assistants/dbca/templates/General_Purpose.dbc -gdbName orcl -sid orcl -sysPassword oracle -systemPassword oracle -datafileDestination /u01/app/oracle/oradata -characterSet zhs16gbk -nationalCharacterSet al16utf16 -responseFile NO_VALUE
名词解释:
-silent
-createDatabase ---》 建库
-templateName /u01/app/oracle/product/11.2.0/db_1/assistants/dbca/templates/General_Purpose.dbc --->建库的模板(通用的)
-gdbName orcl ---》 库名是什么
-sid orcl -----> 实例名
-sysPassword oracle ---》sys口令
-systemPassword oracle ---》 system口令
-datafileDestination /u01/app/oracle/oradata ----》数据文件的存放位置
-characterSet zhs16gbk -----》数据库字符集的设定,(中文支持)
-nationalCharacterSet al16utf16 -------》国家语言字符集
-responseFile NO_VALUE ---------》应答文件为空

现在库也建好了,那接下来就是看下oracle的一些简单命令和一些设置了
su - oracle
我们通过sqlplus / as sysdba的方式连接数据库
还有一种方式就是
sqlplus / nolog 这个是启动工具,但是不登录
要使用
connect / as sysdba 的方式连接到sysdba超级用户,connect可以缩写成conn
show user; 查看当前是哪个用户登录
sysdba 数据的最高权限拥有者
alter user scott account unlock
给scott的用户解锁
conn scott/tiger
连接到scott,使用tiger密码登录
这个时候会提示密码到期了,oracle默认的密码是180天过期,但是只是给你一个警告,让你换密码,但是即使你不换使用以前的密码也是可以的
这里我们会发现我们登录之后,回退键等按键无法使用,这个时候我们就要装一个rlwrap的东西了
select * from tab;
返回当前用户有哪些表,视图等;
我们使用 sqlplus / as sysdba;登录
然后使用alter user scott account unlock;给scott用户解锁

还有一种情况就是我们在查看表的时候有几种情况看着比较不舒服
一个就是当一行字符比较多的时候就乱行了
还有一种就是一个页面有多行的时候会分页,所以这里我们就要做一些操作
cd /home/oracle
vim login.sql(文件名必须为login.sql)
set linesize 100 设定一行最多可以显示100个字符
set pagesize 100 设置一页做多可以显示一百行
set long 50000
set timing on 在执行完sql之后末尾加上执行时间是多少,做一个时间统计
这个文件我们是保存在/home/oracle目录下的,所以这个美化的功能只可以在/home/oracle目录下连接oracle才能生效,在别的目录下是不生效的,所以我们要给它定义到配置文件中
我们可以查看一下show linesize;
我们也可以在终端设置这个参数,但是退出oracle终端的时候下次登录就没用了,所以我们加一个环境变量
cd /home/oracle
vim .bashrc
添加一行
export SQL_PATH=/home/oracle
source .bashrc
添加这个环境变量的意义就在以后每次不管在任何目录下启动sqlplus,都到/home/oracle下读取login.sql 文件
还有就是我们在使用sqlplus的时候,我们发现回退键以及上下键都不能使用,我们需要装一下rlwrap
装完之后,我们设置一下别名
cd /home/oracle
vim .bash_profile
alias sqlplus='rlwrap sqlplus'
alias rman='rlwrap rman'
再次登录就可以使用了
oracle-day1的更多相关文章
- oracle学习笔记day1
oracle数据库前言 oracle sqllesson1 Selecting Rowslesson2 Sorting & Limiting Selected Rowslesson3 Sing ...
- Spark菜鸟学习营Day1 从Java到RDD编程
Spark菜鸟学习营Day1 从Java到RDD编程 菜鸟训练营主要的目标是帮助大家从零开始,初步掌握Spark程序的开发. Spark的编程模型是一步一步发展过来的,今天主要带大家走一下这段路,让我 ...
- 【JAVA零基础入门系列】Day1 开发环境搭建
[JAVA零基础入门系列](已完结)导航目录 Day1 开发环境搭建 Day2 Java集成开发环境IDEA Day3 Java基本数据类型 Day4 变量与常量 Day5 Java中的运算符 Day ...
- Oracle笔记之——常用的函数及脚本
一.oracle 常用的函数及关键字 1.集合操作 1)minus 差集 2)intersect 交集 3)UNION 并集,会去重 4)UNION ALL 并集,不去重2.事物 1)COMMIT ( ...
- Oracle - 截取指定日期的alert log
工作中DBA经常会查看alert log来检查数据库后台都记录了些什么日志,如果只想看某一天或者某段时间范围的日志,能够把这些日志从大的alert log中截取下来放到一个单独的文件中,对于查看和下载 ...
- Oracle常用基础语法(未完待补和操作)
这篇博客主要是Oracle常用基础语法, 另外,存储过程和存储函数很重要,这个后期看视频学习,还有DB优化,另外,还有plsql develop和navicat的使用,重点是数据的导入导出: ---- ...
- Oracle分析函数入门
一.Oracle分析函数入门 分析函数是什么?分析函数是Oracle专门用于解决复杂报表统计需求的功能强大的函数,它可以在数据中进行分组然后计算基于组的某种统计值,并且每一组的每一行都可以返回一个统计 ...
- Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part3:db安装和升级
Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part3:db安装和升级 环境:OEL 5.7 + Oracle 10.2.0.5 RAC 5.安装Database软件 5. ...
- Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part1:准备工作
Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part1:准备工作 环境:OEL 5.7 + Oracle 10.2.0.5 RAC 1.实施前准备工作 1.1 服务器安装操 ...
- Oracle 的基本操作符
!= 不等于 select empno,ename,job from scott.emp where job!='manager' ^= 不等于 select empno,ename,job from ...
随机推荐
- 洛谷P1126机器人搬重物[BFS]
题目描述 机器人移动学会(RMI)现在正尝试用机器人搬运物品.机器人的形状是一个直径1.6米的球.在试验阶段,机器人被用于在一个储藏室中搬运货物.储藏室是一个N*M的网格,有些格子为不可移动的障碍.机 ...
- [转]mysql 乱码问题解决终结
http://www.th7.cn/db/mysql/2011-07-07/9217.shtml 查看 MYSQL的字符设置,在SQL查询界面输入 SHOW VARIABLES LIKE 'chara ...
- RecyclerView,CardView导入和使用(Demo)
简介: 这篇文章是ANDROID L——Material Design详解(UI控件)的一个补充或者说是应用实例,如果有时间建议大家稍微浏览一下上篇文章. 本文主要介绍Android L新增加的两个U ...
- jquery工具方法makeArray/merge
makeArray : 类数组转真数组 merge : 合并数组或转特殊json 使用例子(外部使用): var aDiv = document.getElementsByTagName('div') ...
- AIO 简介
from:http://blog.chinaunix.net/uid-11572501-id-2868654.html Linux的I/O机制经历了一下几个阶段的演进: 1. 同步阻塞I/O: 用 ...
- 修改linux的最大文件句柄数限制
在当前session有效,用户退出或者系统重新后恢复默认值 2)修改profile文件:在profile文件中添加:ulimit -n 65535 ...
- linux svn
1.回滚 一直在找svn回滚的方法,这个还是很实用的,屡试不爽阿 经常由于坑爹的需求,功能要切回到之前的某一个版本.有两种方法可以实现: 方法1: 用svn merge 1) 先 svn up,保证 ...
- 无法连接windows虚拟机oracle的解决办法
在mac机上玩基于oracle db的开发真心不容易,oracle公司死活不出oracle express edition for mac OS,曾经发布过的oracle 10 for mac下载地址 ...
- Eclipse工作常见问题总结
一.Eclipse常见快捷键使用 自动完成单词:Alt+/ 重命名:Shift+Alt+r(统一改变字段或方法名) 生成getter/setter方法: Shift+Alt+s,然后r 删除当前行:C ...
- 记一个全局变量"冒充"局部变量引起的bug
看代码相当简单直观,觉得怎么都不会出错,可运行结果明明就是错了 - 对着vim摸着脑袋就是想不出哪里有问题,可去掉新加的代码,就又可以了. 没办法,只好祭出杀手锏:一行一行注释掉来观察... 反映问题 ...