搭建Oracle 11GR2

1.1.  先决条件检查

1)主机物理内存

命令:grep MemTotal /proc/meminfo

[root@enmotech]# grep MemTotal /proc/meminfo

MemTotal:        1923512 kB

 

2)查看主机是多少位

命令:uname -m

[root@enmotech]# uname -m

x86_64

 

3)查看交换分区大小

命令:grep SwapTotal /proc/meminfo

[root@enmotech]# grep SwapTotal /proc/meminfo

SwapTotal:       2097144 kB

 

物理内存在1-2G 交换分区设置为其1.5

物理内存在2-16G 交换分区设置与其相等

物理内存大于16G  设置为16G

 

4)查看内存使用情况

命令:free

             total       used       free     shared    buffers     cached

Mem:       1923512     458040    1465472          0      22684     172076

-/+ buffers/cache:     263280    1660232

Swap:      2097144          0    2097144

-buffers/cache 的内存数: 263280 (等于第1行的 used - buffers - cached)

+buffers/cache 的内存数: 1660232 (等于第1行的 free + buffers + cached)

-buffers/cache反映的是被程序实实在在吃掉的内存

+buffers/cache反映的是可以挪用的内存总数

 

5)查看临时空间大小

df -k /tmp

[root@yq ~]# df -k /tmp

Filesystem                1K-blocks    Used Available Use% Mounted on

/dev/mapper/vg_yq-lv_root  18069936 2923972  14228052  18% /

/tmp不能小于1G

 

 

6)建立oracle用户以及其用户属组

groupadd -g 400 oinstall 

groupadd -g 401 dba    

groupadd -g 402 oper   

useradd -u 400 -g oinstall -G dba oracle -d /home/oracle

chown -R oracle:oinstall /home/oracle

 

 

mkdir -p /u01/app/oracle

mkdir -p /u01/app/oracle/oralnventory

oraInventory存放Oracle软件安装的目录信息,Oralce的安装升级都需要用到这个目录)

mkdir -p /u01/app/oracle/cfgtoollogs

mkdir -p /u01/app/oracle/product/11.2.0/dbhome_1

chown -R oracle:oinstall /u01/app/oracle

chown -R oracle:oinstall /u01/app/oracle/oralnventory

chmod -R 775 /u01/app/oracle

mkdir -p /u01/tmp

chown root:root /u01/tmp

chmod 777 /u01/tmp

 

注:(1)-R 意思是把/home/oracle目录包括该目录下的子目录的owner都改变为oracle

(把/u01目录下的所有文件和目录的拥有者改为oracle

2-p 创建级联目录

 

3777rwx-rwx-rwx(421-4

21-421)代表所有用户拥有读写执行的权限。

 775  rwxrw-r-x  421424-1

 

7)修改内核参数vi  /etc/sysctl.conf

fs.aio-max-nr = 1048576

fs.file-max = 6815744

kernel.shmall = 2147483648

kernel.shmmax =8589934592

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 = 1048586

修改完成后  sysctl -p 使其生效

 

注:

fs.aio-max-nr = 1048576

指的是 同时可以拥有的的异步IO请求数目。 值出现在 /etc/nf 文件中,推荐值是:1048576 其实它等于 1024*1024 也就是 1024K 个。

fs.file-max = 6815744

该参数决定了系统中所允许的文件句柄最大数目,文件句柄设置代表linux系统中可以打开的文件的数量。

kernel.shmall = 2*1024*1024*1024/4

该参数控制可以使用的共享内存的总页数。Linux共享内存页大小为4KB,共享内存段的大小都是共享内存页大小的整数倍。一个共享内存段的最大大小是16G,那么需要共享内存页数是16GB/4KB=16777216KB /4KB=4194304(页),也就是64Bit系统下16GB物理内存,设置kernel.shmall = 4194304才符合要求(几乎是原来设置2097152的两倍)。这时可以将shmmax参数调整到16G了,同时可以修改SGA_MAX_SIZESGA_TARGET12G(您想设置的SGA最大大小,当然也可以是2G~14G等,还要协调PGA参数及OS等其他内存使用,不能设置太满,比如16G

kernel.shmmax = 物理内存(2G*1024*1024*1024   eg2*1024*1024*1024

是核心参数中最重要的参数之一,用于定义单个共享内存段的最大值。设置应该足够大,能在一个共享内存段下容纳下整个的SGA ,设置的过低可能会导致需要创建多个共享内存段,这样可能导致系统性能的下降。至于导致系统下降的主要原因为在实例启动以及ServerProcess创建的时候,多个小的共享内存段可能会导致当时轻微的系统性能的降低(在启动的时候需要去创建多个虚拟地址段,在进程创建的时候要让进程对多个段进行“识别”,会有一些影响),但是其他时候都不会有影响。

  官方建议值:

  32linux系统:可取最大值为4GB4294967296bytes-1byte,即4294967295。建议值为多于内存的一半,所以如果是32位系统,一般可取值为429496729532位系统对SGA大小有限制,所以SGA肯定可以包含在单个共享内存段中。

  64linux系统:可取的最大值为物理内存值-1byte,建议值为多于物理内存的一半,一般取值大于SGA_MAX_SIZE即可,可以取物理内存-1byte。例如,如果为12GB物理内存,可取12*1024*1024*1024-1=12884901887SGA肯定会包含在单个共享内存段中。

kernel.shmmni = 4096

该参数是共享内存段的最大数量。shmmni缺省值4096,一般肯定是够用了。

kernel.sem = 250 32000 100 128

kernel.sem = 250 32000 100 128为例:

250是参数semmsl的值,表示一个信号量集合中能够包含的信号量最大数目。

32000是参数semmns的值,表示系统内可允许的信号量最大数目。

100是参数semopm的值,表示单个semopm()调用在一个信号量集合上可以执行的操作数量。

128是参数semmni的值,表示系统信号量集合总数。

net.ipv4.ip_local_port_range = 9000 65500

表示应用程序可使用的IPv4端口范围。

re.rmem_default = 262144

表示套接字接收缓冲区大小的缺省值。

re.rmem_max = 4194304

表示套接字接收缓冲区大小的最大值。

re.wmem_default = 262144

表示套接字发送缓冲区大小的缺省值。

re.wmem_max = 1048586

表示套接字发送缓冲区大小的最大值。

 

 

 

8)修改vi /etc/security/limits.conf

oracle soft nproc 16348

oracle hard nproc 16384

oracle soft nofile 65536

oracle hard nofile 65536

oracle soft stack 1024000

oracle hard stack 1024000

注:soft 指的是当前系统生效的设置值。hard 表明系统中所能设定的最大值。soft 的限制不能比hard 限制高。

 

9)修改vi /etc/pam.d/login

session required /lib/security/pam_limits.so

pam.d指的是验证登陆配置,login是登陆配置文件。)

 

10)oracle用户vi .bash_profile

export ORACLE_SID=

export NLS_LANG=AMERICAN_AMERICA. AL32UTF8

export ORACLE_BASE=/u01/app/oracle

export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1

export LD_LIBRARY_PATH=$ORACLE_HOME/lib

export PATH=$ORACLE_HOME/bin:/bin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/X11R6/bin

[root@enmotech ~]# fdisk /dev/sdb

Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel

Building a new DOS disklabel with disk identifier 0x2a328cbd.

Changes will remain in memory only, until you decide to write them.

After that, of course, the previous content won't be recoverable.

 

Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)

 

WARNING: DOS-compatible mode is deprecated. It's strongly recommended to

         switch off the mode (command 'c') and change display units to

         sectors (command 'u').

 

Command (m for help): n

Command action

   e   extended

   p   primary partition (1-4)

p

Partition number (1-4): 1

First cylinder (1-2610, default 1):

Using default value 1

Last cylinder, +cylinders or +size{K,M,G} (1-2610, default 2610):

Using default value 2610

 

Command (m for help): w

The partition table has been altered!

 

Calling ioctl() to re-read partition table.

Syncing disks.

[root@enmotech ~]#

[root@enmotech ~]#

[root@enmotech ~]#

[root@enmotech ~]#

[root@enmotech ~]#

[root@enmotech ~]# mkfs.ext3 /dev/sdb1

mke2fs 1.41.12 (17-May-2010)

Filesystem label=

OS type: Linux

Block size=4096 (log=2)

Fragment size=4096 (log=2)

Stride=0 blocks, Stripe width=0 blocks

1310720 inodes, 5241198 blocks

262059 blocks (5.00%) reserved for the super user

First data block=0

Maximum filesystem blocks=4294967296

160 block groups

32768 blocks per group, 32768 fragments per group

8192 inodes per group

Superblock backups stored on blocks:

        32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,

        4096000

 

Writing inode tables: done                           

Creating journal (32768 blocks): done

Writing superblocks and filesystem accounting information: done

 

This filesystem will be automatically checked every 35 mounts or

180 days, whichever comes first.  Use tune2fs -c or -i to override.

[root@enmotech ~]#

[root@enmotech ~]#

 [root@enmotech ~]# vi /etc/fstab

# /etc/fstab

# Created by anaconda on Tue Feb 14 03:15:20 2017

#

# 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

#

/dev/mapper/vg_enmotech-lv_root /                       ext4    defaults        1 1

UUID=f0ddb98a-7c08-4735-a186-c68645578b33 /boot                   ext4    defaults        1 2

/dev/mapper/vg_enmotech-lv_swap swap                    swap    defaults        0 0

tmpfs                   /dev/shm                tmpfs   defaults        0 0

devpts                  /dev/pts                devpts  gid=5,mode=620  0 0

sysfs            /sys                    sysfs   defaults        0 0

proc             /proc                   proc    defaults        0 0

/dev/sdb1         /oracle                 ext3    defaults        0 2

~

~

"/etc/fstab" 16L, 861C written

 [root@enmotech ~]#

[root@enmotech ~]# mount /oracle

 [root@enmotech ~]#

[root@enmotech ~]# df -h

Filesystem                       Size  Used Avail Use% Mounted on

/dev/mapper/vg_enmotech-lv_root   27G  5.7G   20G  23% /

tmpfs                            940M   72K  940M   1% /dev/shm

/dev/sda1                        485M   39M  421M   9% /boot

/dev/sdb1                         20G  173M   19G   1% /oracle

[root@enmotech ~]#


解压上传的安装包

Unzip -q p13390677_112040_Linux-x86-64_1of7.zip

 

解压后会生成一个DATABASE的文件目录,到DATABASE

[oracle@enmotech database]$ ls

install  readme.html  response  rpm  runInstaller  sshsetup  stage  welcome.html

[oracle@enmotech database]$

 

 

运行runInstaller

[oracle@enmotech database]$ ./runInstaller


图形界面就省略了

[root@enmotech oracle]#

[root@enmotech oracle]# /oracle/app/oracle/oralnventory/orainstRoot.sh

Changing permissions of /oracle/app/oracle/oralnventory.

Adding read,write permissions for group.

Removing read,write,execute permissions for world.

 

Changing groupname of /oracle/app/oracle/oralnventory to oinstall.

The execution of the script is complete.

[root@enmotech oracle]# /oracle/app/oracle/product/11.2.0/dbhome_1/root.sh

Performing root user operation for Oracle 11g

 

The following environment variables are set as:

    ORACLE_OWNER= oracle

    ORACLE_HOME=  /oracle/app/oracle/product/11.2.0/dbhome_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/oratab file...

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 root script.

Now product-specific root actions will be performed.

Finished product-specific root actions.

[root@enmotech oracle]#






来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/31467250/viewspace-2140526/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/31467250/viewspace-2140526/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值