2. 获取Oracle 11G安装包;
3. 创建Oracle安装目录;
1) 创建用户:oracle,组:oinstall,dba;
1) groupadd oinstall #创建用户组oinstall
2) groupadd dba #创建用户组dba
3) useradd -g oinstall -g dba -m oracle #创建用户oracle,并加入oinstall和dba用户组
4) passwd oracle #设置用户oracle的登录密码,根据提示输入两次密码
5) mkdir /oracle #创建Oracle安装目录
6) chown -R oracle:oinstall /oracle #设置目录所有者为oinstall用户组的oracle用户
1. 修改内核参数;
这一步修改主要是因为,在oracle的官方文档中有对oracle数据库安装配置的最低要求,因此需要修改一下
vi /etc/sysctl.conf #编辑,
#在最后添加以下代码
net.ipv4.icmp_echo_ignore_broadcasts = 1
net.ipv4.conf.all.rp_filter = 1
fs.file-max = 6815744
fs.aio-max-nr = 1048576
kernel.shmall = 2097152
kernel.shmmax = 2147483648
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
保存退出后要进行如下 *** 作以使配置生效
sysctl -p #使配置立即生效
2. 设置oracle用户限制
vi /etc/security/limits.conf #在末尾添加以下代码
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
3. 关闭SELINUX
vi /etc/selinux/config
#编辑配置文件
#注释掉SELINUX=enforcing
# 注释掉SELINUXTYPE=targeted
SELINUX=disabled #增加
4. 安装必备软件;
yum install gcc* gcc-* gcc-c++-* glibc-devel-* glibc-headers-* compat-libstdc* libstdc* elfutils-libelf-devel* libaio-devel* sysstat* unixODBC-* pdksh-*
5. 检查依赖关系
binutils-2.23.52.0.1-12.el7.x86_64
compat-libcap1-1.10-3.el7.x86_64
gcc-4.8.2-3.el7.x86_64
gcc-c++-4.8.2-3.el7.x86_64
glibc-2.17-36.el7.i686
glibc-2.17-36.el7.x86_64
glibc-devel-2.17-36.el7.i686
glibc-devel-2.17-36.el7.x86_64
ksh
libaio-0.3.109-9.el7.i686
libaio-0.3.109-9.el7.x86_64
libaio-devel-0.3.109-9.el7.i686
libaio-devel-0.3.109-9.el7.x86_64
libgcc-4.8.2-3.el7.i686
libgcc-4.8.2-3.el7.x86_64
libstdc++-4.8.2-3.el7.i686
libstdc++-4.8.2-3.el7.x86_64
libstdc++-devel-4.8.2-3.el7.i686
libstdc++-devel-4.8.2-3.el7.x86_64
libXi-1.7.2-1.el7.i686
libXi-1.7.2-1.el7.x86_64
libXtst-1.2.2-1.el7.i686
libXtst-1.2.2-1.el7.x86_64
make-3.82-19.el7.x86_64
sysstat-10.1.5-1.el7.x86_64
6. 配置用户的环境变量(可以安装完再设置)
vi /home/oracle/.bash_profile
#在最后添加以下代码
export ORACLE_BASE=/oracle/app/oracle #oracle数据库安装目录
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1 #oracle数据库路径
export ORACLE_SID=orcl #oracle启动数据库实例名
export ORACLE_TERM=xterm #xterm窗口模式安装
export PATH=$ORACLE_HOME/bin:/usr/sbin:$PATH #添加系统环境变量
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib #添加系统环境变量
export #防止安装过程出现乱码
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK #设置Oracle客户端字符集,必须与Oracle安装时设置的字符集保持一致,如:ZHS16GBK,否则出现数据导入导出中文乱码问题
保存退出以后,输入如下命令使配置生效
source .bash_profile #使设置立刻生效
7. 运行如下命令启动安装界面
export LANG=en_US #设置编码,防止图形界面乱码
./runInstaller [jarLoc=]
8. “ins_ctx.mk”错误处理
下载下面的文件,解压后使用其中libstdc++替换/usr/lib64目录下的同名文件即可
9. “ins_emagent.mk”编译错误,未解决,但未发现影响使用。
工具/原料redhat linux
oracle 10g 安装文件
方法/步骤
检查硬件是否满足要求
1)确保系统有足够的 RAM 和交换空间大小,运行以下命令:
#grep MemTotal /proc/meminfo
#grepSwapTotal /proc/meminfo
注:所需最小 RAM 为 512MB,而所需最小交换空间为 1GB。对于 RAM 小于或等于 2GB 的系统,交换空间应为 RAM 数量的两倍;对于 RAM 大于 2GB 的系统,交换空间应为 RAM 数量的一到两倍。
2)确保有足够的磁盘空间。Oracle 10g软件大约需要 2.5GB 的可用磁盘空间,数据库则另需至少1.2G的磁盘空间
3)/tmp 目录至少需要 400MB 的可用空间。
要检查系统上的可用磁盘空间,运行以下命令:
#df-h
检查系统是否已安装所需的开发包
使用rpm -qa命令,确保以下包已成功安装。对于包的版本,只有版本高于下面的都可以,如果低于此版本,则要升级处理,如下:
binutils-2.15.92.0.2-13.EL4
compat-db-4.1.25-9
compat-libstdc++-296-2.96-132.7.2
control-center-2.8.0-12
gcc-3.4.3-22.1.EL4
gcc-c++-3.4.3-22.1.EL44
glibc-2.3.4-2.9
glibc-common-2.3.4-2.9
gnome-libs-1.4.1.2.90-44.1
libstdc++-3.4.3-22.1
libstdc++-devel-3.4.3-22.1
make-3.80-5
pdksh-5.2.14-30
sysstat-5.0.5-1
xscreensaver-4.18-5.rhel4.2
setarch-1.6-1
libaio-0.3.103-3
创建oracle组和oracle用户
创建用于安装和维护 Oracle 10g软件的 Linux 组和用户帐户。用户帐户将称为 oracle,而组将称为 oinstall(用于软件安装) 和 dba(用于数据库管理)。
#groupadd oinstall
#groupadd dba
#useradd -m -g oinstall -G dba oracle –poracle (p表示添加帐号密码)
创建oracle目录并改变目录权限
现在,创建存储 Oracle 10g 软件和数据库文件的目录。本指南在创建目录结构时所用的命名惯例符合最佳灵活结构 (OFA) 规范。
以 root 用户身份执行以下命令:
#mkdir -p /u01/app/oracle # oracle根目录,-p 表示递归建立目录
#mkdir -p /u02/oradata # oracle数据文件存放目录
#chown -R oracle:oinstall /u01
#chown -R oracle:oinstall /u02
#chmod -R 775 /u01
#chmod -R 775 /u02
配置linux内核参数
#vi/etc/sysctl.conf,添加如下内容:
kernel.shmall = 2097152
kernel.shmmax = 2147483648 #此处默认设置为2G,数值一般设为物理内存的40~50%
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default = 262144
net.core.rmem_max = 262144
net.core.wmem_default = 262144
net.core.wmem_max = 262144
完成后,运行以下命令激活更改:
#sysctl–p
注:Linux 内核非常出色。与大多数其他 *NIX 系统不同,Linux 允许在系统启动和运行时修改大多数内核参数。完成内核参数更改后不必重新启动系统。Oracle 数据库 10g 需要以下所示的内核参数设置。其中给出的是最小值,因此如果您的系统使用的值较大,则不要更改它。
配置oracle用户的shell限制
#vi /etc/security/limits.conf 添加如下内容:
oracle softnproc 2047
oracle hardnproc 16384
oracle softnofile 1024
oracle hardnofile 65536
#vi /etc/pam.d/login添加如下内容:
session required pam_limits.so
导出x图形界面给oracle用户
由于安装时采用的是oracle的OUI图形化界面,需要X支持,而默认oracle用户是不支持图形化 *** 作的,必须以root的身份导出X给oracle用户使用。运行如下命令:
#xhost +
access control disabled,clients can connect from any host
出现以上文字表示导出成功。
oracle用户下执行
1.2.1设置环境变量
#su –oracle
$vi .bash_profile
加入以下内容:
TMP=/tmp
TMPDIR=$TMP
ORACLE_BASE=/u01/app/oracle#oracle 根目录
ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1 #oracle 家目录
ORACLE_SID=orcl #根据实际需要命名
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
PATH=$ORACLE_HOME/bin:$PATH
exportTMP TMPDIR ORACLE_BASE ORACLE_HOME ORACLE_SID LD_LIBRARY_PATH PATH
$source .bash_profile #使环境变量生效
2、安装 Oracle
2.1、下载并解压oracle软件
从Oracle网站下载10201_database_linux_x86_32.cpio.gz到oracle用户家目录下/home/oracle/(也可为其他目录),使用oracle用户登录后,解压此文件:
$startx
$cd /home/oracle
$gunzip 10201_database_linux_x86_64.cpio.gz
$cpio -idmv <10201_database_linux_x86_64.cpio
以上 *** 作将Oracle安装文件解压到database/目录。
(根据下载的包的格式不同,解压出来后的目录格式可能不同。)
2.2、Oracle OUI进行图形化安装(推荐使用高级安装方式)
切换到database/目录下,运行以下命令:
$cd database
$./runInstaller
检验是否安装成功
数据库正常安装结束后,默认是启动的。以oracle用户身份运行以下命令测试:
$sqlplus/ as sysdba
SQL>selectopen_mode from v$database
OPEN_MODE
------------------
READ WRITE
若出现以上文字说明数据库正在正常运行。自此,数据库安装成功。
一、修改 *** 作系统核心参数在Root用户下执行以下步骤:
1)修改用户的SHELL的限制,修改/etc/security/limits.conf文件
输入命令:vi /etc/security/limits.conf,按i键进入编辑模式,将下列内容加入该文件。
?
1
2
3
4
5
6
7
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
编辑完成后按Esc键,输入“:wq”存盘退出
2)修改/etc/pam.d/login 文件,输入命令:vi /etc/pam.d/login,按i键进入编辑模式,将下列内容加入该文件。
?
1
2
3
session required /lib/security/pam_limits.so
session required pam_limits.so
编辑完成后按Esc键,输入“:wq”存盘退出
3)修改linux内核,修改/etc/sysctl.conf文件,输入命令: vi /etc/sysctl.conf ,按i键进入编辑模式,将下列内容加入该文件
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
fs.file-max = 6815744
fs.aio-max-nr = 1048576
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 4194304
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
编辑完成后按Esc键,输入“:wq”存盘退出
4)要使 /etc/sysctl.conf 更改立即生效,执行以下命令。 输入:sysctl -p 显示如下:
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
linux:~ # sysctl -p
net.ipv4.icmp_echo_ignore_broadcasts = 1
net.ipv4.conf.all.rp_filter = 1
fs.file-max = 6815744
fs.aio-max-nr = 1048576
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 4194304
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
5)编辑 /etc/profile ,输入命令:vi /etc/profile,按i键进入编辑模式,将下列内容加入该文件。
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
if [ $USER = "oracle" ]then
if [ $SHELL = "/bin/ksh" ]then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
编辑完成后按Esc键,输入“:wq”存盘退出
6)创建相关用户和组,作为软件安装和支持组的拥有者。
创建Oracle用户和密码,输入命令:
?
1
2
3
useradd -g oinstall -g dba -m oracle
passwd oracle
然后会让你输入密码,密码任意输入2次,但必须保持一致,回车确认。
7)创建数据库软件目录和数据文件存放目录,目录的位置,根据自己的情况来定,注意磁盘空间即可,这里我把其放到oracle用户下,例如:
输入命令:
?
1
2
3
4
5
6
7
mkdir /home/oracle/app
mkdir /home/oracle/app/oracle
mkdir /home/oracle/app/oradata
mkdir /home/oracle/app/oracle/product
8)更改目录属主为Oracle用户所有,输入命令:
?
1
chown -R oracle:oinstall /home/oracle/app
9)配置oracle用户的环境变量,首先,切换到新创建的oracle用户下,
输入:su – oracle ,然后直接在输入 : vi .bash_profile
按i编辑 .bash_profile,进入编辑模式,增加以下内容:
?
1
2
3
4
5
6
7
8
9
export ORACLE_BASE=/home/oracle/app
export ORACLE_HOME=$ORACLE_BASE/oracle/product/11.2.0/dbhome_1
export ORACLE_SID=orcl
export PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib
编辑完成后按Esc键,输入“:wq”存盘退出
二、安装过程
1)当上述系统要求 *** 作全部完成后,注销系统,在图形界面以Oracle用户登陆。首先将下载的Oracle安装包复制到linux中,用SSH其他ftp工具拷贝。
打开一个终端,运行unzip命令解压oracle安装文件,如:
输入命令:
?
1
2
3
unzip linux.x64_11gR2_database_1of2.zip
unzip linux.x64_11gR2_database_2of2.zip
解压完成后 cd 进入其解压后的目录database
输入命令:
cd database
使用ls命令可以查看解压后database所包含的文件,如下图:
2)执行安装,输入命令:./runInstaller
装到这一步,可以看到,可以查看到有很多的rpm包没有,我们可以从安装linux的光盘或ISO中(或去D:\linux_oracle11g_Package)查找所缺的包,使用ftp上传到linux中,然后使用rpm –ivh xxx.rpm --nodeps –force 来进行安装(其中加上--nodeps -- force 代表强制安装,是在直接使用rpm –ivh xxx.rpm安装不成功的情况下用的)等到把包全部都安装好的情况下,再次在oracle图形界面中,执行安装过程2,下来在环境检查过程中,就通过了。
安装过程中86%可能会遇到报错如出错问题(error in invoking target 'mkldflags ntcontab.o nnfgt.o' of makefile)按照如下步骤顺序执行。
上传安装镜像rhel-server-6.1-x86_64-dvd.iso,
然后将镜像文件挂,如/mnt
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
# mount -o loop rhel-server-6.1-x86_64-dvd.iso /mnt
# cd /mnt/Packages
# rpm -ivh glibc-common-2.12-1.25.el6.x86_64.rpm
# rpm -ivh kernel-headers-2.6.32-131.0.15.el6.x86_64.rpm
# rpm -ivh libgcc-4.4.5-6.el6.x86_64.rpm
# rpm -ivh glibc-2.12-1.25.el6.x86_64.rpm
# rpm -ivh libgomp-4.4.5-6.el6.x86_64.rpm
# rpm -ivh nscd-2.12-1.25.el6.x86_64.rpm
# rpm -ivh glibc-headers-2.12-1.25.el6.x86_64.rpm
# rpm -ivh glibc-devel-2.12-1.25.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.5-6.el6.x86_64.rpm
# rpm -ivh gcc-4.4.5-6.el6.x86_64.rpm
注:以上是安装gcc,软件安装顺序不能错。
?
1
2
3
4
5
6
7
******************************************
# rpm -ivh libstdc++-4.4.5-6.el6.x86_64.rpm
# rpm -ivh libstdc++-devel-4.4.5-6.el6.x86_64.rpm
# rpm -ivh gcc-c++-4.4.5-6.el6.x86_64.rpm
注:以上是安装gcc-c++
根据这个方法解决了错误。
安装完成后,系统会提示你需要用root权限执行2个shell脚本。按照其提示的路径,找到其所在的位置,如:我的就在/home/oracle/app/oracle/product/11.2.0/dbhome_1/root.sh
和 /home/oracle/oraInventory/orainstRoot.sh 新开启一个终端,输入命令:
?
1
2
3
4
5
6
7
8
9
su – root
cd /home/oracle/app/oracle/product/11.2.0/dbhome_1
sh root.sh
cd /home/oracle/oraInventory
sh orainstRoot.sh
三、数据库建库
1) 还是在oracle用户的图形界面oracle用户中,新开启一个终端,直接输入命令dbca会d出如下界面。我们这里采用定制数据库。
经过漫长的等待,当看到此界面,说明oracle建库完成
四、配置监听及本地网络服务
1)在oracle用户的图形界面oracle用户中,新开启一个终端,输入命令netca 会d出如下界面。
2)创建监听服务(充当oracle服务器,让别的oracle客户端连接本oracle服务器)
3) 配置本地网络服务名(充当oracle客户端,连接别的oracle服务器)
输入连接的oracle服务器的数据库的实例名
输入oracle服务器的ip地址
选中YES测试
点击change Login 输入所连接oracle服务器的其中某一个用户名和密码(用户名oracle和设置的密码),点击OK
看到此界面说明测试成功(如果不成功,请查看网络是否畅通,所连接的oracle服务器是否启动,监听是否启动等原因)
为你所设置的本地网络服务名起个名字
这样oracle服务器安装配置基本就完成了
注意:
1、Linux oracle数据库listener.ora存放路径
cd /home/oracle/app/oracle/product/11.2.0/dbhome_1/network/admin/listener.ora
2、Linux oracle数据库tnsnames.ora存放路径
cd /home/oracle/app/oracle/product/11.2.0/dbhome_1/network/admin/tnsnames.ora
3、ORACLE启动监听器
(1)切换至oracle安装用户(一般为oracle)
su - oracle
(2)启动监听器
lsnrctl start
(3)停止监听器
lsnrctl stop
4、启动测试oracle:
[oracle@oracle ~]$ sqlplus /nolog
SQL*Plus: Release 11.2.0.1.0 Production on Fri Jul 27 02:12:12 2012
Copyright (c) 1982, 2009, Oracle. All rights reserved.
SQL>quit
测试的另一种方法:找一台windows平台电脑,telnet oracle主机IP地址:1521,通的话,会出现一个黑屏,光标一闪一闪。
5、Linux开放1521端口允许网络连接Oracle Listener
症状:
(1)TCP/IP连接是通的。可以用ping 命令测试。
(2)服务器上Oracle Listener已经启动。
lsnrctl status 查看listener状态
lsnrctl start 启动Oracle listener
(3)客户端得到的错误信息通常是:ORA-12170: TNS:连接超时
这时,我们基本可以肯定是服务器没有开放1521端口(假设你用默认设置)
解决方法:
(1)假如你是在一个局域网环境,配置了防火墙。那么可以关闭Linux的防火墙。
sudo service iptables stop
(2)编辑iptables, 开放1521端口:
sudo vi /etc/sysconfig/iptables
-A INPUT -p tcp -m state --state NEW -m tcp --dport 1521 -j ACCEPT
:wq
重启防火墙
sudo service iptables restart
保存配置,以便linux重启后依然有效
sudo service iptables save
查看防火墙规则:
sudo iptables -L –n
6、linux下创建oracle用户表空间
就是在已有的数据库实例上创建一个新的帐号,访问一些新的表
*** 作步骤如下:
(1)登录linux,以oracle用户登录(如果是root用户登录的,登录后用 su - oracle命令切换成oracle用户)
(2)以sysdba方式来打开sqlplus,命令如下: sqlplus "/as sysdba"
(3)查看我们常规将用户表空间放置位置:执行如下sql:
select name from v$datafile
(4)创建用户表空间:
CREATE TABLESPACE NOTIFYDB DATAFILE '/home/oracle/app/oradata/orcl/scsdb.dbf' SIZE 200M AUTOEXTEND ON EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO
(5)创建用户,指定密码和上边创建的用户表空间
CREATE USER scs IDENTIFIED BY scs DEFAULT TABLESPACE NOTIFYDB
(6)赋予权限
grant connect,resource to scs
grant unlimited tablespace to scs
grant create database link to scs
grant select any sequence,create materialized view to scs
--经过以上 *** 作,我们就可以使用scs/scs登录指定的实例,创建我们自己的表了
更详细内容 请看www.linuxprobe.com
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)