2024年2月6日发(作者:)
安装oracle11g的步骤
Oracle11gR2官方联机文档:
/pls/db112/homepage
一、 安装Oracle前的准备工作
1、 检查物理内存及Swap
# grep MemTotal /proc/meminfo
MemTotal: 1031320 kB(1G内存)
#grep SwapTotal /proc/meminfo
SwapTotal: 2064376 kB(2G)
2、 检查可用的内存和Swap
free –m
total used free shared buffers cached
Mem: 1007 696 310 0 43 479
-/+ buffers/cache: 172 834
Swap: 2015 0 2015
建议:物理内存最好是2GB及以上。1024MB的物理内存,可用的只有1001MB,安装时不能通过Oracle“执行先决条件检查”,事实证明即使物理内存低于1GB一,也可以忽略此警告,并不影响Oracle软件的成功安装,如下:
物理内存- 此先决条件将测试系统物理内存总量是否至少为1GB (1048576.0KB)。
预期值: 1GB (1031320.0KB)
实际值: 1007.9MB (1025944.0KB)
错误列表:-PRVF-7530 : 节点"ctcdb01" 上的物理内存不足[所需物理内存= 1GB
(1048576.0KB)] - Cause: 发现物理内存(RAM) 的数量不满足最低内存要求。- Action: 向指定的节点添加物理内存(RAM)。
二、 检查Oracle11gR2所需要的rpm包
如果你的是 Oracle 11g Release 2 (11.2) for Linux x86,请看下面链接的安装文档
/docs/cd/E11882_01/install.112/e10857/
我使用操作系统 , CentOS release 6.0(Final) Kernel 6.i686
检查相关的开发工具和一些包The following or later version of packages for Asianux
3, Oracle Enterprise Linux 5, and Red Hat Enterprise Linux 5 should be installed:
/cd/E11882_01/install.112/e24322/pre_#BABCFBDG
1、检查命令格式如下:
rpm -qa | grep 名字
binutils-2.17.50.0.6 ok
ok
ok
ok
compat-libstdc++-33-3.2.3
elfutils-libelf-0.125
elfutils-libelf-devel-0.125
elfutils-libelf-devel-static-0.125 ok
gcc-4.1.2
ok
ok
ok
ok
ok
ok
ok
ok
ok
ok
ok
ok
ok
ok
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 ok
numactl-devel-0.9.8.i386
sysstat-7.0.2
unixODBC-2.2.11
ok
ok
ok
unixODBC-devel-2.2.11 ok
pdksh-5.2.14-8.i386 ok(先移除自带的ksh
yum remove ksh 在yum install pdksh-*
centos6.2中会遇到此情况)
下载地址:/3?stat=3&search=pdksh
从 tOS 文件找到缺少的包, 并且上传到 linux 上去
ls *.rpm
rpm -ivh *.rpm
2、配置内核参数
# sysctl -a | grep sem
= 250 32000 32 128
(centos6.2可能会出现内核不对头,修改参数echo "=250 32000 100 128" >>
/etc/)
# sysctl -a | grep ip_local_port_range
_local_port_range = 32768 61000
如果原有的内核参数值大于Oracle建议的内核参数值,则不用修改该内核值,反之,则需要修改,建议内存大于2G的正式,一定一条条要仔细检查;Oracle建议的内核最小值
3、这里使用Oracle建议值配置:
vi /etc/
-max-nr = 1048576
-max = 6815744
= 2097152
= 1010000000
= 4096
= 250 32000 100 128
_local_port_range = 9000 65500
_default = 262144
_max = 4194304
_default = 262144
_max = 1048586
参数说明.txt
# sysctl -p #使内核参数立即生效
# sysctl -a |grep #查看内核参数的值
= 536870912
4 、配置Oracle用户资源限制
# vi /etc/security/
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft stack 10240
加入以下行到/etc/pam.d/login,如果存在,则不加入
# grep pam_ /etc/pam.d/login
vi /etc/pam.d/login
session required pam_
5、在/etc/profile文件中加入以下行
For the Bourne, Bash, or Korn shell, add the following lines in the /etc/profile
file (or the /etc/ file on SUSE Linux Enterprise Server systems):
# vi /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用户资源限制这个部分,不配置也不会影响Oracle数据库的成功安装;但是考虑到,若有糟糕的sql语句对服务器资源的无限占用,导致长时间对用户请求无响应,还是建议提前限制Oracle用户资源为好。
6、建立用户和初始化文件
# groupadd oinstall
# groupadd dba
# useradd -g oinstall -G dba oracle
useradd -g oinstall -G dba
# passwd oracle(zxy123456)
#chown -R oracle:oinstall oracle
检查 nobody 是否存在 , id nobody
缺省存在的。如果不存在 # /usr/sbin/useradd -g nobody
# su - oracle
$ pwd
/home/oracle
$ vi .bash_profile #初始化文件最少设置以下5项(黑体表示)
ORACLE_BASE=/home/oracle/app
ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1/
ORACLE_SID=CTCDB
PATH=$ORACLE_HOME/bin:$PATH:$HOME/bin
export ORACLE_BASE ORACLE_HOME ORACLE_SID PATH使Oracle用户初使化文件生效:
. .bash_profile
7、创建Oracle基目录和软件安装目录
在此不要再创建oracle或者oradata这样的系统目录,目录名应该尽量简洁,有含义,易懂。
$ pwd
/home/oracle
$ mkdir -p /home/oracle/app/product/11.2.0/db_1
$ mkdir soft #开始上传数据库软件
8、开始安装Oracle
用具有root权限的账户,解压以下文件:
$ cd soft
$ unzip linux_11gR2_database_
$ unzip linux_11gR2_database_
查看解压后的database目录及其文件是否为oracle:oinstall属性安装数据库软件
chown -R oracle:oinstall database/
重启电脑
安装数据库软件
安装Oracle数据库,我们一般采取先安装数据库软件,再配置监听器,最后DBCA创建数据数据库,这样有助于理解数据库架构,如果安装过程出错,也容易判断故障。
$ cd database
$ ./runInstaller
1. 配置安全更新,这里都不输入,下一步,继续安装
2. 选择安装选项:仅安装数据库软件
3. 节点选择:单实例数据库安装
4. 选择产品语言:英文和中文
5. 选择数据库版本:企业版
6. 指定安装位置:默认,Oracle基目录和软件位置的路径来自.bash_profile中的设置,如下图
7. 创建产品清单:默认,此配置来自.bash_profile的设置,如下图:
8. 特权操作系统组:默认,此配置来自.bash_profile的设置,如下图:
9. 执行先决条件检查若有警告,请检查安装Oracle的安装物理和软件条件,再次重新检查,直到通过查检,下一步:除测试环境外,否则不要忽略警告。
(1、先移除自带的ksh
yum remove ksh 在yum install pdksh-*
centos6.2中会遇到此情况
2、centos6.2可能会出现内核不对头,修改参数echo "=250 32000 100 128" >>
/etc/)
10. 概要
11. 安装产品:由Oracle程序自动安装,不需要要用户干涉。
12. 以root身份执行下图所示脚本:
# /home/oracle/oraInventory/
更改权限/home/oracle/oraInventory.
添加组的读取和写入权限。
删除全局的读取, 写入和执行权限。
更改组名/home/oracle/oraInventory 到oinstall.
脚本的执行已完成。
# /home/oracle/app/product/11.2.0/db_1/
Running Oracle 11g
The following environment variables are set as:
ORACLE_OWNER= oracle
ORACLE_HOME= /home/oracle/app/product/11.2.0/db_1
Enter the full pathname of the local bin directory: [/usr/local/bin]:
Copying dbhome to /usr/local/bin ...
Copying oraenv to /usr/local/bin ...
Copying coraenv to /usr/local/bin ...
Creating /etc/
Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of script.
Now product-specific root actions will be performed.
Finished product-specific root actions.
这2个脚本执行成功后,点击上图 确定 按钮。
13. 安装Oracle软件完成,关闭退出,这时已经可以用sqlplus连接进去了
$ ps -ef| grep ora_ #由于没创建数据库还看不到进程
三、 Netca配置监听器
下面我们使用”dbca”来创建数据库,在运行”dbca”之前,先运行”netca”配置一下line网络连接,是11g版本的一个新的特性,你直接进行”dbca”会有一个Warning;
$ netca
1. 选择 监听程序配置
2. 由于第一次配置Netca,故只有添加这一项。
3. 监听程序名:LISTENER,使用默认的。
4. 选定协议:TCP,也是默认的
5. 端口配置,使用:1521标准端口,也可以自定义端口
6. 选择“否”,完成配置
7. 点击 完成 ,退出netca配置程序。
安装完成后,就可以看到listener的进程了:
$ ps -ef|grep tnslsnr
oracle 6847 1 0 15:17 ? 00:00:00 /home/oracle/app/product/11.2.0/db_1/bin/tnslsnr
LISTENER -inherit
四、DBCA创建数据库
$ dbca
1. 启动数据库配置助手,后的欢迎界面,如下图:下一步
2. 选择 创建数据库
3. 选择要创建数据库的类型: 一般用途或事务处理
4. 全局数据库名:CTCDB,在单实例下和SID相同(.bash_profile 初始化文件一样)
5. 这里默认勾选 配置Enterprise Manager
6. 选择 所有账户使用同一管理口令,此处的密码,最好繁杂而有规律,便于记忆。
7. 此处选择 默认安装
8. 加选 启用归档,让我们的数据库一开始就运行在归档模式
9. 示例方案,勾选则安装,对初学者可以安装。
10. 数据库字符集:UTF-8,数据库字符集就是Oracle服务器端字符集
字符集的概念和选择进行简单介绍.txt
11. 概要
12. 选择 创建数据库
13. 正在安装数据库
14. 安装完成,点击 退出 ,完成安装
192.168.122.150:1158/em至此,数据库安装完成
五、验证新安装的数据库
1、安装rlwrap包
这是一个为方便使用SQL*PLUS的技巧,为了能像在DOS命令窗口中那样运行SQL*Plus,使用向上、向下键来跳回之前已经执行过的SQL语句。需要在Linux上安装rlwrap包,这个程序本身是个Shell,可以运行任何你提供给它的命令包括参数,并添加命令历史浏览功能。
下载:/~hlub/uck/rlwrap/
上传到Linux服务器,解压。进入rl目录,再执行3条命令
install rlwrap:
# gunzip
# tar xvf
# tar xzvf #或者一条命令搞定:*.文件的解压
# cd rlwrap-0.30
# ./configure
# make
# make check
# make install
2、切到oracle用户,编辑bash文件,加入以下两行
# su - oracle
$ vi .bash_profile
alias sqlplus="rlwrap sqlplus"
alias rman="rlwrap rman"
3、在防火墙中放行Oracle对外的相关端口
# iptables -I INPUT -p tcp --dport 1521 -j ACCEPT
# iptables -I INPUT -p tcp --dport 1158 -j ACCEPT
# service iptables save
将当前规则保存到/etc/sysconfig/iptables:[确定]
# service iptables restart
# iptables -L –n
PS:
# iptables -D INPUT -p tcp --dport 1158 -j ACCEPT #删除一条规则
# iptables -R INPUT 1 -p tcp --dport 1158 -j ACCEPT #更新一条规则,是INPUT链中的 第一条规则。
# service iptables save #更新规则后,请保存
# iptables -L –n –v
4、Sqlplus验证
$ sqlplus "/as sysdba" #sqlplus本地登录
$ sqlplus system/ctc2012@ctcdb #sqlplus远程登录
$ ps -ef | grep ora_ #查看进程
5、PL/SQL连接测试
首先配置本地文件,登录Oracle服务器,
# su - oracle
$ cd /home/oracle/app/product/11.2.0/db_1/network/admin
$ cat
CTCDB =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.122.150)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = CTCDB)
)
)
把以上内容追加到本地的文件中,使用PL*SQL工具,只要能连接登录成功,即可。
六、 EM测试与维护
1、一般Oracle安装好后,EM默认已经开启,不过重新启动oracle服务器后,需要用以下的命令开启
# su - oracle
$ emctl status dbconsole
$ emctl start dbconsole
$ emctl status dbconsole
$ emctl –help
用以下URL测试登录
192.168.122.158:1158/em
数据库用户名:system 密码zwydb_001
启动数据库实例,分为两步:第一步,启动监听;第二步,启动数据库实例。
1. 进入到sqlplus启动实例,
2. lsnrctl star --“打开监听”
3. $ sqlplus /nolog --“进入到sqlplus”
4. SQL> conn /as sysdba --“连接到sysdba”
5. SQL> startup --“启动数据库实例”
2、若dbconsole不能开启,请重新配置dbconsole
$ emca -config dbcontrol db -repos recreate
EMCA 开始于2011-7-21 11:16:14
EM Configuration Assistant, 11.2.0.0.2 正式版
版权所有(c) 2003, 2005, Oracle。保留所有权利。
输入以下信息:
数据库SID: ora11g #用echo $ORACLE_SID查看
已为数据库CTCDB 配置了Database Control
您已选择配置Database Control, 以便管理数据库ora11g
此操作将移去现有配置和默认设置, 并重新执行配置
是否继续? [是(Y)/否(N)]: y
监听程序ORACLE_HOME [ /home/oracle/oradata/oracle ]:
/home/oracle/app/product/11.2.0/db_1/
#用ps –ef|grep tnslsnr查看
SYS 用户的口令:
DBSNMP 用户的口令:
SYSMAN 用户的口令:
通知的电子邮件地址(可选):
通知的发件(SMTP) 服务器(可选):
„„省略输出
$ emctl start dbconsole
Oracle Enterprise Manager 11g Database Control Release 11.2.0.1.0
Copyright (c) 1996, 2009 Oracle Corporation. All rights reserved.
oracle11gr2kam:1158/em/console/aboutApplication
- An instance of Oracle Enterprise Manager 11g Database Control is already running.
七、 Oracle基础操作
1、 查询数据库字符集
sqlplus "/as sysdba"
SQL> select userenv('language') from dual;
2、查询数据文件位置
SQL> select file_id,file_name,bytes/1024/1024 Total_MB,online_status from
dba_data_files;
3、建立表空间注意事项
在正式库中,建立的表空间往往,读写比较频繁,这时考虑到磁盘I/O竞争,建议把用户的表空间分别放在不同的磁盘上,若条件允许把Archive log也不要和用户表空间放在同一磁盘上,要分开存放。
sqlplus "/as sysdba";
建立用户
create user nxt identified by zwydb_001
create user sxitismg identified by zwydb_001
用户授权
grant connect to nxt
grant create table to nxt
grant resource to nxt
grant dba to nxt
第一种方式登录:su - oracle;
sqlplus /nolog;
connect/as sysdba;(conn /as sysdba
)
第二种登录方式:
Su – oracle
sqlplus "/as sysdba";
alter user nxt identified by zwydb_001
alter user zwywh identified by zwywh_001;
在以SYSDBA身份登陆时可以修改其他用户的密码,比如:
SQL> alter user user01 identified by user10;
用户已更改。
这个是把USER01用户密码修改为USER10
/home/oracle/app/product/11.2.0/db_1
4、数据库数据导出语句:
topmcorporation;teabmember;teabgroup;teabrelation;tsvruserlink;tsvreabsubscribe;导出这些表
exp userid=nxt/zwydb_001@nxt file=d:
tables=topmcorporation,teabmember,teabgroup,teabrelation,tsvruserlink,tsvreabsubscribe direct=y feedback=5000
5、数据库数据导入语句:
imp userid=nxt/nxt@nxtoa fromuser=nxt touser=sxitismg file=
tables=topmcorporation,teabmember,teabgroup,teabrelation,tsvruserlink,tsvreabsubscribe ignore=y feedback=5000 commit=y
本文发布于:2024-02-06 23:04:14,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/170723185562740.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |