--安装背景
上次碰到问题,cursor:mutex S导致的load过高, 有说可以升级到11.2.0.4就能避免这种问题,所以准备重新搭建新版本11.2.0.4。
安装环境是:azure云 linux centos6.5。
1,修改内核
1.1 修改sysctl.conf文件
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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
|
[root@orcltest Downloads] # vim/etc/sysctl.conf # add by tim.man kernel.shmmax = 277495689510912 kernel.shmmni = 4096 kernel.sem = 250 32000 100 128 net.core.rmem_default = 262144 net.core.rmem_max = 4194304 net.core.wmem_default = 262144 net.core.wmem_max = 1048586 fs. file -max = 6815744 # Controls the maximum number of shared memory segments, in pages kernel.shmall = 4294967296 net.ipv4.tcp_max_tw_buckets = 6000 net.ipv4.ip_local_port_range = 9000 65500 net.ipv4.tcp_tw_recycle = 0 net.ipv4.tcp_tw_reuse = 1 net.core.somaxconn = 262144 net.core.netdev_max_backlog = 262144 net.ipv4.tcp_max_orphans = 262144 net.ipv4.tcp_max_syn_backlog = 262144 net.ipv4.tcp_synack_retries = 2 net.ipv4.tcp_syn_retries = 1 net.ipv4.tcp_fin_timeout = 1 net.ipv4.tcp_keepalive_time = 30 net.ipv4.tcp_keepalive_probes = 6 net.ipv4.tcp_keepalive_intvl = 5 net.ipv4.tcp_timestamps = 0 fs.aio-max-nr = 1048576 |
1.2 使参数生效
1
|
[root@orcltest Downloads] # sysctl –p |
2,增加用户和组
1
2
3
4
5
6
7
8
9
|
[root@orcltestDownloads] # groupadd oinstall [root@orcltestDownloads] # groupadd dba [root@orcltestDownloads] # groupadd oper [root@orcltestDownloads] # useradd -g oinstall -G dba,oper oracle [root@orcltestDownloads] # passwd oracle |
3,修改limits.conf限制
1
2
3
4
5
6
7
8
9
|
[root@orcltestDownloads] # vim /etc/security/limits.conf oracle soft nproc 2047 oracle hard nproc 16384 oracle soft nofile 1024 oracle hard nofile 65536 |
4,修改/etc/pam.d/login
1
2
3
|
[root@orcltestDownloads] # vim /etc/pam.d/login session required /lib64/security/pam_limits .so |
5,修改bash_profile文件
(1)修改profile:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
[root@orcltest Downloads] # vim /etc/profile # add by tim.man if [ $USER = "oracle" ]; then if [ $SHELL = "/bin/ksh" ]; then ulimit -p 16384 ulimit -n 65536 else ulimit -u 16384 -n 65536 fi fi |
(2)修改bash_profile:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
[oracle@orcltest ~]$ vim .bash_profile export EDITOR= vi export ORACLE_SID=doea5db export ORACLE_BASE= /u01/app/oracle export ORACLE_HOME=$ORACLE_BASE /product/10 .2.0 /db_1 export INVENTORY_LOCATION= /oraInventory export LD_LIBRARY_PATH=$ORACLE_HOME /lib export NLS_LANG= "American_america.zhs16gbk" export NLS_DATE_FORMAT= 'yyyy-mm-dd hh24:mi:ss' export PATH=$ORACLE_HOME /bin : /bin : /usr/bin : /usr/sbin : /usr/local/bin : /usr/X11R6/bin :$PATH:$HOME /bin umask 022 |
使bash_profile生效:
1
|
[oracle@orcltest ~]$ source .bash_profile |
6,创建目录
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
|
[root@orcltest~] # mkdir /data/oracle [root@orcltest~] # chown oracle:oinstall /data [root@azure_earth_dbm1_3_112 app] # mkdir /data/oracle [root@azure_earth_dbm1_3_112 app] # mkdir /data/oraInventory [root@azure_earth_dbm1_3_112 app] # cd /oracle/app [root@azure_earth_dbm1_3_112 app] # ln -s /data/oracle oracle [root@azure_earth_dbm1_3_112 app] # ln -s /data/oraInventory oraInventory [root@azure_earth_dbm1_3_112 app] # chown -R oracle.oinstall /data [root@azure_earth_dbm1_3_112 app] # chown -R oracle.oinstall /oracle [root@azure_earth_dbm1_3_112 app] # [root@ azure_earth_dbm1_3_112 oracle] # mkdir -p /oracle/app/oracle [root@ azure_earth_dbm1_3_112 oracle] # chown -R oracle:oinstall /oracle/app/oracle [root@ azure_earth_dbm1_3_112 oracle] # chmod -R 775 /oracle/app/oracle [root@ azure_earth_dbm1_3_112 oracle] # |
7,安装rpms包
Rpm包安装:rpm -ivh *--force –nodeps
Rpms安装有时候不一定保证有效,可以再用yum安装:
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
30
31
32
33
34
|
# 采用yum安装,如下: yum install -y binutils* yum install -y compat-libstdc* yum install -y elfutils-libelf* yum install -y gcc* yum install -y glibc* yum install -y ksh* yum install -y libaio* yum install -y libgcc* yum install -y libstdc* yum install -y make * yum install -y sysstat* yum install libXp* -y yum install -y glibc-kernheaders # 检查下lib是否安装齐全: [root@powerlong4 ~] # rpm -q --queryformat %-{name}-%{version}-%{release}-%{arch}"\n" \ compat-libstdc++-33 glibc-kernheaders glibc-headers libaio libgcc glibc-devel xorg-x11-deprecated-libs |
如果缺少,就继续安装缺失的组件包。
8,安装vnc
9,解压缩
Oracle官网一般下载不到,需要用户名密码登录,大家如果需要这款Oracle软件下载,欢迎在下面留言区留下你的email地址,我看到了会及时发给你的。
这里只是准备部署dataguard,所以只需要安装1of7和2of7这2个zip包即可。
unzipp13390677_112040_Linux-x86-64_1of7.zip
unzip p13390677_112040_Linux-x86-64_2of7.zip
解压缩完,会看到一个database目录。
10,vnc viewer远程安装
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
30
31
32
33
34
35
|
[root@azure_earth_dbm1_3_112 ~] # exportDISPLAY=10.254.3.112:1.0 [root@azure_earth_dbm1_3_112 ~] # xhost + access control disabled, clients canconnect from any host [root@azure_earth_dbm1_3_112 ~] # [oracle@azure_earth_dbm1_3_111 database]$. /runInstaller "You are attempting to install 64-bitOracle on a 32-bit operating system. This is not supported and will not work." [oracle@azure_earth_dbm1_3_111 database]$vim runInstaller # 注释掉exit 126即可 if [ `$UNAME` = "Linux" ]; then if [ -e $GETCONF ]; then value=`$GETCONF LONG_BIT` if [ $value != 64 ]; then echo "\"You are attempting to install 64-bit Oracle on a32-bit operating system. This is notsupported and will not work.\"" ; #exit 126; #corresponding to the exit code of oui fi fi fi |
然后再执行./runInstaller,会有如下界面,正式开始界面安装oracle数据库,选择忽略软件更新的提示,点击next下一步,如下图01.png:
之后选择单实例数据库安装,如02.png所示:
从左面的可用语言里面选择UK、SC、TC,如下03.png所示:
之后选择企业版本4.7GB,如下04.png所示:
下面的oraclebase根目录以及软件目录,都默认不需要设置(当然如果你要改路径也是可以的),默认后直接next下一步,如05.png:
接下来在oraInventorygroup name的时候选择oinstall,如08.png所示next下一步:
在databaseadministrator group上选择dba,在databaseoperator group上面选择oper,然后net下一步,如009.png所示:
然后,执行checksoracle基础组件,如果有libaio、compat的提示,直接IgnoreAll即可,next下一步如010.png所示:
然后选择install安装,开始安装oracle软件,如011.png所示:
之后进入安装界面,会有进度条%显示,如012.png所示:
如果安装完成,会弹出ExecuteConfiguration scripts所示,选择OK完成oracle软件安装,如013.png所示:
之后,看到oracle安装到最好一步Finish,选择close结束,如014.png所示:
11,执行dbca初始化脚本:
以root身份执行orainstRoot.sh和root.sh脚本(注:执行完脚本以后,在点击“ok”):
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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
|
# 查找文件路径 [oracle@azure_earth_dbm1_3_111 database]$ find /data/ -name orainstRoot.sh /data/oraInventory/orainstRoot .sh [oracle@azure_earth_dbm1_3_111 database]$ find /data/ -name root.sh /data/oracle/product/11 .2.0 /dbhome_1/inventory/Templates/root .sh /data/oracle/product/11 .2.0 /dbhome_1/root .sh [oracle@azure_earth_dbm1_3_111 database]$ # 开始执行脚本 [root@azure_earth_dbm1_3_111 soft] # sh /data/oraInventory/orainstRoot.sh Changing permissions of /oracle/app/oraInventory . Adding read ,write permissions for group. Removing read ,write,execute permissions for world. Changing groupname of /oracle/app/oraInventory to oinstall. The execution of the script is complete. [root@azure_earth_dbm1_3_111 soft] # [root@azure_earth_dbm1_3_111 soft] # sh /data/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@azure_earth_dbm1_3_111 soft] # |
12,netca创建oracle监听
在shell命令行sudo – oracle,然后执行netca命令,出现如下界面,选择默认的listener configure配置,如下015.png:
然后选择Add,添加新的监听,如016.png:
默认监听名字为LISTENER,然后next下一步如017.png所示
然后继续next下一步,如018.png所示:
端口选择默认的1521,然后next下一步如019.png所示:
Ok,listener添加完毕,点击cancel退出,如020.png所示:
13,vnc远程dbca安装oracle数据库实例
1
2
3
4
5
6
7
8
9
|
[root@azure_earth_dbm1_3_112 ~] # exportDISPLAY=192.168.3.112:1.0 [root@azure_earth_dbm1_3_112 ~] # xhost + access control disabled, clients canconnect from any host [root@azure_earth_dbm1_3_112 ~] # [oracle@azure_earth_dbm1_3_111 database]$ dbca |
dbca后出现oracle实例安装界面,如下所示,选择第一个,然后next如021.png所示:
选择创建数据库,然后next下一步如022.jpg所示:
填写全局实例名和SID,这里默认是一样的powerdes,然后next如024.jpg所示:
之后下一步默认,如025.jpg所示:
设置统一的sys密码,如026.jpg、027.png所示所示:
选择用本地的数据文件模版地址:如028.jpg所示:
之后配置闪存区和归档,如029.jpg所示:
选择模版schemas,如030.jpg所示:
配置sga、pga,默认是40%,这里因为是专用的db服务器,可以调整到70%,如031.png所示:
然后选择连接数,默认是150,基本不够用,这里可以设置为5000,如032.png所示:
然后选择字符集,设定16GBK,如033.png所示:
然后出现Data Store,看到一些文件以及存储参数,如034.jpg所示:
然后选择CreateDatabase和GenerateDatabase Creation Scripts,开始create,如035.jpg所示:
之后,跳出确认信息界面,点击ok确认,如036.jpg所示:
之后看到配置界面,提示scripts创建成功了,点击ok,如037.jpg所示:
再之后出现的是创建db的界面,创建数据文件,如038.jpg所示:
然后开始创建数据文件,这个时间比较漫长,主要看磁盘写入速度,如果是ssd磁盘,几分钟就结束了,如果是普通磁盘估计要至少一个小时左右吧,之后创建数据文件结束后,oracle数据库实例就创建完成了,如039.jpg所示:
14,修改启动参数打开归档和闪回
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
|
# 修改spfile参数 SQL> alter system set log_archive_dest_1= 'location=/doea5/arch' ; SQL> alter system set log_archive_format= 'arch_%t_%s_%r.log' scope=spfile; SQL> alter system set db_recovery_file_dest_size=20G scope=spfile; SQL> alter system set db_recovery_file_dest= '/oracle/app/oracle/flash_recovery' ; SQL> alter system set db_flashback_retention_target=10080 scope=spfile; SQL> alter system set undo_retention=10800; # 打开归档和闪回 SQL> shutdown immediate SQL> startup mount SQL> alter database archivelog ; SQL> alter database flashback on ; SQL> alter database open ; |
OK,至此,oracle11g2.0.4顺利圆满安装完成了。
如果一直报“xhost: unable to open display”,而且没有其它办法解决,可以尝试下面的途径:
1
2
3
4
5
6
7
8
9
|
[root@pddbnew ~] # export DISPLAY=10.251.3.31:1.0 [root@pddbnew ~] # xhost + xhost: unable to open display "10.251.3.31:1.0" [root@pddbnew ~] # [root@pddbnew ~] # [root@pddbnew ~] # export DISPLAY=pddbnew:1.0 [root@pddbnew ~] # xhost + xhost: unable to open display "pddbnew:1.0" [root@pddbnew ~] # |
解决方式:
执行命令: export DISPLAY=:1.0
执行命令:xdpyinfo(ps:xdpyinfo命令会出来一堆信息)
执行命令:xhost +
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。
原文链接:http://blog.csdn.net/mchdba/article/details/51418063