centos6安装Oracle11g详细安装步骤

安装环境

VMware 12

CentOS 6.5

硬盘 40G

内存 2G

根分区 30G

交换分区 3G

添加根分区

1,首先添加磁盘,成功之后会显示在/dev下

ls /dev/sdb

2,创建分区

fdisk /dev/sdb

3,格式化分区

mkfs.ext4 /dev/sdb1

4,创建物理卷

pvcreate /dev/sdb1

5,将物理卷扩展到卷组

vgextend VolGroup /dev/sdb1

6,将卷组中的空闲空间扩展到根分区逻辑卷

lvextend -l +100%FREE /dev/VolGroup/lv_root

7,刷新根分区

resize2fs /dev/VolGroup/lv_root

交换分区设置

添加交换分区:(方法一)

1.添加swap交换分区空间
使用dd命令创建swap交换分区文件/dev/mapper/centos-swap,大小为2G:
$ dd if=/dev/zero of=/dev/mapper/centos-swap bs=1024 count=2048000
格式化swap分区:
$ mkswap /dev/mapper/centos-swap
设置交换分区:
$ mkswap -f /dev/mapper/centos-swap
**swap分区:
$ swapon /dev/mapper/centos-swap
设为开机自动启用:
$ vim /etc/fstab
在该文件底部添加如下内容:
/dev/mapper/centos-swap swap swap default 0 0
2.删除swap交换分区
停止正在使用的swap分区:
$ swapoff /dev/mapper/centos-swap
删除swap分区文件:
$ rm /dev/mapper/centos-swap
删除或注释在/etc/fstab文件中的以下开机自动挂载内容:
/dev/mapper/centos-swap swap swap default 0 0

添加swap交换分区:(方法二)

[[email protected] ~]# fdisk /dev/vda
欢迎使用 fdisk (util-linux 2.23.2)。

更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。

命令(输入 m 获取帮助):n ##新建分区
All primary partitions are in use
添加逻辑分区 6 ##设置盘符
起始 扇区 (11114496-16777215,默认为 11114496):##扇区默认
将使用默认值 11114496
Last 扇区, +扇区 or +size{K,M,G} (11114496-16777215,默认为 16777215):+100M ##盘符大小设置
分区 6 已设置为 Linux 类型,大小设为 100 MiB

命令(输入 m 获取帮助):t ##修改盘符为swap
分区号 (1-6,默认 6):6
Hex 代码(输入 L 列出所有代码):82
已将分区“Linux”的类型更改为“Linux swap / Solaris”

命令(输入 m 获取帮助):w ##保存配置
The partition table has been altered!

Calling ioctl() to re-read partition table.

WARNING: Re-reading the partition table failed with error 16: 设备或资源忙.
The kernel still uses the old table. The new table will be used at
the next reboot or after you run partprobe(8) or kpartx(8)
正在同步磁盘。
[[email protected] ~]# partprobe ##初始化kernal的盘符列表
步骤2
设置新创建的swap盘符交换空间
[[email protected] ~]# mkswap /dev/vda6
正在设置交换空间版本 1,大小 = 102396 KiB
无标签,UUID=4a424ab0-283e-483b-b3f6-f3e5ee1a7570
步骤3
使能交换分区,并加入开机启动编辑fstab文件
[root[email protected] ~]# swapon -a && swapon /dev/vda6
[[email protected] ~]# vim /etc/fstab
# /etc/fstab
# Created by anaconda on Mon May 30 16:17:24 2016
#
# Accessible filesystems, by reference, are maintained under '/dev/disk’
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info

UUID=954fe550-b7ea-4c51-85bf-38a54cf6c0d0 / xfs defaults 1 1
/dev/mapper/vg0-vo /home xfs defaults 1 2
UUID=42ac954f-c4cc-404d-b4dc-7a0339c43349 swap swap defaults 0 0
/dev/vda5 swap swap defaults 0 0
/dev/vda6 swap swap defaults 0 0

步骤4
验证一下
[[email protected] ~]# swapon
NAME TYPE SIZE USED PRIO
/dev/vda2 partition 512M 47.5M -1
/dev/vda5 partition 512M 0B -2
/dev/vda6 partition 100M 0B -3

[[email protected] ~]# fdisk -l

磁盘 /dev/vda:8589 MB, 8589934592 字节,16777216 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x0009fddc

设备 Boot Start End Blocks Id System
/dev/vda1 * 2048 8194047 4096000 83 Linux
/dev/vda2 8194048 9242623 524288 82 Linux swap / Solaris
/dev/vda3 9242624 10061823 409600 8e Linux LVM
/dev/vda4 10061824 16777215 3357696 5 Extended
/dev/vda5 10063872 11112447 524288 82 Linux swap / Solaris
/dev/vda6 11114496 11319295 102400 82 Linux swap / Solaris

磁盘 /dev/mapper/vg0-vo:306 MB, 306184192 字节,598016 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
额外的
删除交换分区
[[email protected] ~]# swapoff /dev/vda6 ##停用这个
[[email protected] ~]# fdisk /dev/vda
欢迎使用 fdisk (util-linux 2.23.2)。

更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。

命令(输入 m 获取帮助):p

磁盘 /dev/vda:8589 MB, 8589934592 字节,16777216 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x0009fddc

设备 Boot Start End Blocks Id System
/dev/vda1 * 2048 8194047 4096000 83 Linux
/dev/vda2 8194048 9242623 524288 82 Linux swap / Solaris
/dev/vda3 9242624 10061823 409600 8e Linux LVM
/dev/vda4 10061824 16777215 3357696 5 Extended
/dev/vda5 10063872 11112447 524288 82 Linux swap / Solaris
/dev/vda6 11114496 11319295 102400 82 Linux swap / Solaris

命令(输入 m 获取帮助):d ##删除vda6
分区号 (1-6,默认 6):6
分区 6 已删除

命令(输入 m 获取帮助):p

磁盘 /dev/vda:8589 MB, 8589934592 字节,16777216 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x0009fddc

设备 Boot Start End Blocks Id System
/dev/vda1 * 2048 8194047 4096000 83 Linux
/dev/vda2 8194048 9242623 524288 82 Linux swap / Solaris
/dev/vda3 9242624 10061823 409600 8e Linux LVM
/dev/vda4 10061824 16777215 3357696 5 Extended
/dev/vda5 10063872 11112447 524288 82 Linux swap / Solaris

命令(输入 m 获取帮助):w
The partition table has been altered!

Calling ioctl() to re-read partition table.

WARNING: Re-reading the partition table failed with error 16: 设备或资源忙.
The kernel still uses the old table. The new table will be used at
the next reboot or after you run partprobe(8) or kpartx(8)
正在同步磁盘。
[[email protected] ~]# partprobe ##初始化
[[email protected] ~]# vim /etc/fstab
[[email protected] ~]# cat /etc/fstab |grep vda6
#/dev/vda6 swap swap defaults 0 0 ##注释或删除

##安装Oracle
1.安装前确认
根分区、交换分区尽可能的设的大一点,不然可能会在安装时出现问题。
2.软件准备
Oracle数据库的下载,对应电脑系统分为32位和64位,具体的安装过程是一样的。我的电脑系统是64位的,使用的压缩文件如下图:
centos6安装Oracle11g详细安装步骤

注意这俩个文件是都需要的。

3.环境配置
第一步:修改主机名,以root权限登录,将主机名修改为oracledb
[[email protected] ~]# sed -i “s/HOSTNAME=localhost.localdomain/HOSTNAME=oracledb/”/etc/sysconfig/network
[[email protected] ~]# hostname oracledb

第二步:修改网络连接方式
1.修改网卡配置:
[[email protected] ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0
下面是我的配置

DEVICE=eth1
TYPE=Ethernet
UUID=689e9fd6-cc72-4c36-95d8-d5c7bda9d41c
ONBOOT=yes
NM_CONTROLLED=yes
#BOOTPROTO=none
BOOTPROTO=static# 设置为静态

HWADDR=D8:50:E6:C4:30:A9
IPADDR=192.168.136.142# 静态IP
#PREFIX=24

GATEWAY=192.168.136.254# 默认网关
DEFROUTE=yes
IPV4_FAILURE_FATAL=yes
IPV6INIT=no
NAME=“System eth1”
NETMASK=255.255.255.0# 子网掩码

修改网关配置:
[[email protected] ~]# vi /etc/sysconfig/network

下面是我的配置:
NETWORKING=yes # 是否使用网络
NETWORKING_IPV6=no
HOSTNAME=oracledb
GATEWAY=192.168.136.142

修改DNS配置:(此处感觉没什么用,可省略)
nameserver 8.8.8.8

重启网络服务
[[email protected] ~]# service network restart

第三步:添加主机名和IP对应记录
[[email protected] ~]# vi /etc/hosts
192.168.136.142 oracledb

第四步:关闭防火墙Selinux
[[email protected] ~]#sed -i “s/SELINUX=enforcing/SELINUX=disabled/” /etc/selinux/config
[[email protected] ~]# setenforce 0

防火墙设置:建议永久关闭
1)永久性生效,重启后不会复原
开启: chkconfig iptables on 关闭: chkconfig iptables off
2)即时生效,重启后复原
开启: service iptables start 关闭: service iptables stop

第五步:安装依赖包:
[[email protected] ~] yum -y install gcc gcc-c++ make binutilscompat-libstdc+±33 elfutils-libelf elfutils-libelf-devel glibc glibc-commonglibc-devel libaio libaio-devel
libgcclibstdc++ libstdc+±devel unixODBC unixODBC-devel

注意:若无法联网下载依赖包,可直接在本机下载依赖包,然后将jar包复制到Linux系统中。

第六步:创建用户和组
[[email protected] ~]# sysctl -p
[[email protected] ~]# groupadd -g 200 oinstall
[[email protected] ~]# groupadd -g 201 dba
[[email protected] ~]# useradd -u 440 -g oinstall -G dba oracle
[[email protected] ~]# passwd oracle

第七步:修改内核参数
[[email protected] ~]# vi/etc/sysctl.conf #末尾添加如****:建议直接在文件末尾粘贴下面的参数信息)
net.ipv4.ip_local_port_range= 9000 65500
fs.file-max = 6815744
kernel.shmall = 10523004
kernel.shmmax = 6465333657
kernel.shmmni = 4096
kernel.sem = 250 32000 100128
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

第八步:修改系统资源配置
[[email protected] ~]# vi/etc/security/limits.conf #末尾添加如****:建议到文件里面进行手动添加)
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
[[email protected] ~]# vi/etc/pam.d/login (注:建议到文件里面进行手动添加)
session required pam_namespace.so #下面添加一条pam_limits.so
session required pam_limits.so
[[email protected] ~]# 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

第九步:创建安装目录及设置权限,命令行输入
[[email protected] ~]# mkdir /opt/oracle/app/
[[email protected] ~]# mkdir /opt/oracle/oradata/
[[email protected] ~]# chmod 755 /opt/oracle/
[[email protected] ~]# chmod 775 /opt/oracle/app/
[[email protected] ~]# chown oracle.oinstall -R /opt/oracle/

第十步:设置环境变量
[[email protected] ~]$ vi ~/.bash_profile (注:~/表示的是当前登录用户的根目录的意思)
export ORACLE_BASE=/opt/oracle/app
export ORACLE_HOME=ORACLEBASE/product/11.2.0/dbhome1exportPATH=ORACLE_BASE/product/11.2.0/dbhome_1 export PATH=PATH:$ORACLE_HOME/bin
export ORACLE_SID=orcl
export ORACLE_PID=orcl

若命令行没法修改,需要找到文件进行手动添加信息,但是你会发现找不到。因为.开头的文件都是隐藏文件,这时候你需要进入oracle用户的文件系统,按CTRL+H即可让所有的隐藏文件都现身,然后再进行添加信息!

[[email protected] ~]$ source .bash_profile #立即生效

4.安装数据库
解压文件:
[[email protected]~]# unzip /media/linux.x64_11gR2_database_1of2.zip
[[email protected]~]# unzip /media/linux.x64_11gR2_database_2of2.zip
开始安装:
[[email protected]~]# xhost + #使所有用户都能访问图形桌面, 注意这步很重要。
[[email protected]~]# su –oracle
[[email protected]~]#./media/database/runInstaller

若执行命令时,无权限,则需要先切换到root用户授权,之后执行命令
[[email protected] ~]# chmod 755 /home/oracle/database

成功进入到了图形化界面安装:
不要输入Email地址,直接next
centos6安装Oracle11g详细安装步骤

选择安装数据库软件并创建数据,也可以选择第二项仅安装数据库软件,然后next
centos6安装Oracle11g详细安装步骤

选择服务器版本,如图,点击next
centos6安装Oracle11g详细安装步骤

单例数据库,如图,点击next
centos6安装Oracle11g详细安装步骤

高级模式安装,点击next

添加支持的语言,如图,点击next
centos6安装Oracle11g详细安装步骤

选择要安装的版本,如图,点击next
centos6安装Oracle11g详细安装步骤

安装数据库目录,如图,点击next
centos6安装Oracle11g详细安装步骤

创建详细目录
centos6安装Oracle11g详细安装步骤

选择配置类型
centos6安装Oracle11g详细安装步骤

数据库与服务名
centos6安装Oracle11g详细安装步骤

开启自动内存管理,然后先不要点击next,而是点击Memory旁边的Charactor sets选项。
centos6安装Oracle11g详细安装步骤

设置默认编码为UTF8
centos6安装Oracle11g详细安装步骤

启用oracle企业管理控制台OEM

centos6安装Oracle11g详细安装步骤
选择数据库文件目录

自动备份设置
centos6安装Oracle11g详细安装步骤

设置数据库用户名和密码,有一个密码建议包含大写和小写字母,总长度不能低于8位。可以根据自己需要设置
centos6安装Oracle11g详细安装步骤

授权的组

centos6安装Oracle11g详细安装步骤

检查oracle一些安装要求,包都已经安装,直接忽略
centos6安装Oracle11g详细安装步骤

开始安装

centos6安装Oracle11g详细安装步骤
.创建备份数据库
centos6安装Oracle11g详细安装步骤
进度条到100%时安装完成!

centos6安装Oracle11g详细安装步骤
安装完成后,会出来一个对话框,提示使用root用户执行这两个脚本
[[email protected] ~]$ /opt/oracle/oraInventory/orainstRoot.sh
[[email protected] ~]$ /opt/oracle/app/product/11.2.0/dbhome_1/root.sh

命令行进入数据库:
[[email protected] ~]# su –oracle
[[email protected] ~]# lsnrctl start
[[email protected] ~]# sqlplus / as sysdba
SQL> startup #启动数据库实例

一些oracle常用命令
SQL> shutdown immediate #关闭数据库实例
SQL> select * from tab; #查看所有表
SQL> select name from vKaTeX parse error: Expected 'EOF', got '#' at position 10: datafile #̲查看数据库存放目录 SQL> …instance; #查看实例名
SQL> select name from vKaTeX parse error: Expected 'EOF', got '#' at position 11: database; #̲查看数据库名 SQL> sel…pwfile_users; #查看具有sysdba权限的用户
SQL> select * fromdba_ustats; #查看当前用户信息
SQL> select * fromuser_sys_privs #查看当前用户系统权限
SQL> select * fromuser_role_privs #查看当前用户角色
SQL> select * fromdba_sys_privs #查看指定用户所具有的系统权限
SQL> select * fromv$version #查看oracle版本
SQL> select * fromuser_views #查看视图信息
[[email protected] ~]# lsnrctl start #开启远程监听端口