linux使用VNC远程安装oracle
Oracle日志路径
也可以在oracle数据库中查找
SQL> show parameter background_dump_dest
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
background_dump_dest string /usr/local/oracle/app/oracle/d
iag/rdbms/custom/orcl/trace
[oracle@oracle ~]$ cd /usr/local/oracle/app/oracle/diag/rdbms/custom/orcl/trace/
[oracle@oracle trace]$ tail -f alert_orcl.log
这里安装oracle是使用的图形化安装oracle
首先要安装linux图形化界面
详情请查看以下:“linux安装X Window开启图形化界面”
Linux图形化界面安装完成后,接下来要配置一下oracle的用户环境
1.安装相关的软件包
yum install -y binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel gcc gcc-c++ glibc glibc-common glibc-devel libaio libaio-devel libgcc libstdc++ libstdc++-devel make numactl sysstat libXp unixODBC unixODBC-devel
2.编辑vim /etc/sysctl.conf文件,末尾添加如下行
fs.file-max = 6815744
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.wmem_default = 262144
net.core.wmem_max = 1048576
3.编辑vim /etc/security/limits.conf文件,在末尾添加下列行
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
编辑 vim /etc/pam.d/login文件末尾添加如下行
session required pam_limits.so
4.建立相关的安装目录
[root@oracle ~]# mkdir /usr/local/oracle
[root@oracle ~]# mkdir /usr/local/oracle/app
[root@oracle ~]# mkdir /usr/local/oracle/app/oracle
5.建立dba,oinstall组与oracle用户
groupadd oinstall
groupadd dba
useradd -g oinstall -G dba -d /usr/local/oracle oracle
passwd oracle
chown -R oracle:oinstall /usr/local/oracle/
6.更改系统版本,并关闭selinux
#vim /etc/redhat-release
将里面的内容太更改为redhat-4
目前oracle不支持高版本的,先改成这个,装好了,再改回来
运行#setenforce 0 关闭selinux、
7.设置oracle环境变量
#vim /home/oracle/.back_profile
[root@oracle oracle]# cat .back_profile
#Oracle Setting
TMP:/tmp; export TMP
TMPDIR=$TMP;export TMPDIR
ORACLE_BASE=/usrlocal/oracle; export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/product/11.0.2/dbhome;
export ORACLE_HOME
ORACLE_SID=orcl; export ORACLE_SID
ORACLE_TERM=xterm;export ORACLE_TERM
PATH=$PATH:$ORACLE_HOME/bin;export PATH
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib;
export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/JREORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib;
export CLASSPATH
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/bash" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
oracle的安装前配置已经完成了,下面我们来配置下VNC服务,脸上图形界面开始安装了
配置VNC服务器,并启动开启图形界面
1.先配置下/etc/sysconfig/vncservers这个配置文件。
在文件的末尾添加如下:
VNCSERVERS="2:oracle"
VNCSERVERARGS[2]="-geometry 800x600"
VNCSERVERS="1:root"
VNSERVERARGS[1]="-geometry 800x600"
制动oracle和root用户的启动端口及启动的分辨率
2.配置oracle用户的密码,及启动的桌面环境
(1)配置密码我们用vncpasswd命令
#vncpasswd oracle
然后输入两次密码,可完成密码的配置
(2)配置oracle用户登陆时启用的桌面环境
#vim /root/.vnc/xstartup
修改最后一行的twm& 为gnome-session(GNOME风格的桌面环境)或startkde & (KDE风格的桌面环境),
这个环境看你装的是哪个,装那个就改成哪个。保存退出。
防火墙设置
Vncserver启动后,默认是5901端口号,这里也跟sysctl设置有关系。可以根据实际启动的端口进行设置,这个步骤可以在vncserver启动志强,也可以在启动之后
#vim /etc/sysconfig/iptables 找到下面这行
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
在这之后添加:
-A INPUT -m state --state NEW -m tcp -p tcp --dport 5901 -j ACCE
PT
重启防火墙,重点是开放5901端口。
最后,我们启动vnc服务
#service vncserver start
#netstat -ntlp
本地远程连接vnc的桌面环境
vnc链接是需要java环境支持的或者使用vnc链接客户端。
安装vnc客户端
在windows下安装vnc客户端,下载地址http://pan.baidu.com/s/1pJFkIIB;
软件包名称 RealVNC_cngr.rar,
(1)windows安装vnc
点击下一步,选择“I accept the agreement”
安装路径,可以默认,也可以更改
下一步之后再次填写目录
下一步,直到安装完成
安装成功后,会弹出一个画面框
提示你选择Visit our web site to obtain a license key或Apply a license key you already possess。前者的意思是访问RealVNC官网去获得一个密钥,而后者的意思就是在下一步操作中直接输入密钥
这里提供几个亲测可用的注册码:
BQ24G-PDXE4-KKKRS-WBHZE-F5RCA ---这里我用的这个注册码
BQ24G-PDXE4-KKKRS-WBHZE-F5RCA
8ZEZH-QPANM-NX3A5-8C4TS-8B97A
7AB4X-3YNXF-C5MRR-59DJG-7HGNA
UPL8P-CN2MT-85ERA-N3E3B-GERDA
X24XP-V247M-HEMNV-ZTMZK-FNB7A
执行vncserver命令
New 'oracle:2 (root)' desktop is oracle:2 (装置编号)------一定要记住这行,稍后会用到
(2)安装完成之后(在windows上运行VNC Viewer)
VNC server:输入vnc server的ip地址(及装置编号)
注意:vnc连接linux服务器时,linux服务器首先要登陆到图形化界面
Vnc客户端的IP地址填写的是linux服务器的ip地址
Password密码是用vncpasswd设置的密码
我这里当时设置的是oracle,所以这里密码填写oracle
注意:vnc端口,vnc给浏览器的端口是5800+N
给vncserver的端口号是5900+N,N是设定的display号
安装成功!!!!
到这一步就是vnc连接服务端了,那么接下来就该安装oracle11g了
打开centos中的终端
System----preferences-------keyboard shortcuts
找到“run a terminal” 按下shift+ctrl+c
Ctenos下安装oracle11g R2
1.将下载好的oracle数据库包解压缩。
wget http://v.yingsun.net/cobra/download/linux.x64_11gR2_database_1of2.zip
wget http://v.yingsun.net/cobra/download/linux.x64_11gR2_database_2of2.zip
注意:切换用户时-bash-4.1$
从root用户切换到oracle用户时报错
解决方法: 在改变用户家目录时usermod带上参数-d -m
如果用户已经创建好了,首先将它删除
Userdel -rf oracle
Useradd oracle ---t添加用户
#usermod -md /usr/local/oracle/app/ oracle
#su - oracle
就成功了!!!!
2.切换到oracle用户下,进行安装文件解压的目录:
unzip linux.x64_11gR2_database_1of2.zip
unzip linux.x64_11gR2_database_2of2.zip
3.运行安装文件下的./runInstaller程序,运行后它将检查下你的影狐配置环境。
如果配置有错的话,他会提示,然后安装上面步骤更改正确即可。
#Cd /usr/local/oracle/app/oracle/database
#./runlnstaller
这个直接勾选上就可以了,下一步
选择install database software only,点击next
选择”single instance database istallation “,点击Next
1.single instance database istallation --单实例应用集群
2.real application clusters databases installation 实际应用集群数据库安装
在Available Languages中点选English、Simplified Chinese、Traditional Chinese,点击两个框中间的>,将选中的语言加入到右边的Selected Languages中,然后点击Next
按照实际情况,选择企业版本,如下图
填写oracle的软件路径和基本路径,如下图:
选择安装日志目录,如下图所示
选择dba组
注意:以下这一步不需要点任何,直接点击”finish”就可以了
安装中,这个时间比较漫长
需要等待中,大概20分钟左右
这一步之后到达最后之后
意思就是需要root权限执行以下命令:
#/oracle/oraInventory/orainstRoot.sh
#/oracle/product/10.2.0/db_1/root.sh
cd /usr/local/oralnventory/
#sh orainstRoot.sh
#cd /usr/local/oracle/app/oracle/product/11.2.0/dbhome
#sh root.sh
然后点击close,结束
创建数据库(oracle使用dbca建立数据库)
数据库的创建使用oracle用户进行(假设数据库名称为powerdes,在实际操作中,斜体的powerdes需要替换为实际定义的数据库名),按下面步骤创建数据库。
安装需要在图形界面(在控制台或者用X-Window工具软件)。打开一个终端窗口,执行如下命令:dbca,如下图所示:
#[oracle@oracle ~]$ find / -name netmgr
/usr/local/oracle/app/oracle/product/11.2.0/dbhome/bin/netmgr
# dbca
报错信息:
解决方法:
[oracle@oracle ~]$ cat .bash_profile
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
# User specific environment and startup programs
PATH=$PATH:$HOME/bin
export PATH
ORACLE_BASE=/usr/local/oracle/app/oracle;export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome;export ORACLE_HOME
ORACLE_SID=orcl; export ORACLE_SID
PATH=$ORACLE_HOME/bin:$PATH; export PATH
if [ $USER = "oracle" ] || ]$USER = "grid" ];
then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
(2)DISPLAY not set. Set DISPLAY environment variable, then re-run.
解决办法:export DISPLAY=172.1960.102:1.0
Ip为你的服务器ip地址
设置DISPLAY为ip地址加上1.0
Database Configuration Assistant图形界面启动。标题同时指明了步骤的编号和步骤的名称。在步骤名称为Welcome的欢迎窗口,直接点击next。
等待下一步NEXT
选择Custom Database
输入数据库名称,默认全局和SID 是一样的
Global Database Name框:输入前面确定的数据库名
SID框:自动出现和数据库名相同的内容作为数据库实例名,单实例情况下不作改动
继续默认
报错:configuring database with database control requires a listener to be configured in the current oracle home. you need to run nerca to configure a listener before you can proceed otherwise you may choose to continue without database control configuration
解决办法:监听未启动.#lsnrctl start ---启动监听
添加口令,随便,我这里添了个lanmao
因为口令很随便,所以会有提示,不去管它,点“是”
下一步即可
以下:
storage 存储
Controlfile 控制文件
Tablespaces 表空间
Datafiles 数据文件
Redo log groups 重做日志组
点击“finish”
点击“ok”
Global Database Name ----全局数据库名
Database Configuration Type -------数据库配置类型
SID ------SID
Management option Type -------管理选项类型
Storage Type --------存储类型:文件系统
Memory Configuration Type ---------内存配置类型:自动内存管理
开始创建数据库,需要点时间。
点击OK按钮,有报错说/etc/oratab读取错误,报错如下图所示
所以去建立下这个目录
[root@powerlong4 rpms]# mkdir /etc/oratab
[root@powerlong4 rpms]#
[root@powerlong4 rpms]# chown -R oracle.oinstall /etc/oratab
等待35分钟后,数据库创建完毕,之后点击,如下所示:
9,简单验证
[oracle@powerlong4 ~]$ sqlplus "/ as sysdba"
SQL*Plus: Release 11.2.0.1.0 Production on Sat Jan 24 14:51:10 2015
Copyright (c) 1982, 2009, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
SQL> startup
报错(1)ORA-01078: failure in processing system parameters & LRM-00109: could not open parameter file
解决办法:
发现在/usr/local/oracle/app/oracle/product/11.2.0/dbhome/dbs/下找不到initorcl.ora文件,于是去$ORACLE_HOME/admin/Custom/pfile 或者find / -name pfile 查找“pfile”这个文件;找到init.ora.3102017201154这个文件,将它拷贝到/usr/local/oracle/app/oracle/pruduct/11.2.0/dnhome/dbs/目录下,并重命名为“initorcl.ora”后,重启数据。问题解决!!!
# cd /usr/local/oracle/app/oracle/admin/Custom/pfile
#cp init.ora.3102017201154 /usr/local/oracle/app/oracle/product/11.2.0/dbhome/dbs/
# cd /usr/local/oracle/app/oracle/product/11.2.0/dbhome/dbs/
#cp init.ora.3102017201154 initorcl.ora
#sqlplus / as sysdba
#SQL> startup
ORA-00845: MEMORY_TARGET not supported on this system
报错(2)ORA-00845: MEMORY_TARGET not supported on this system
解决办法:
根据网上搜索给出的解释就是/dev/shm/过小导致错误,而且/dev/shm是一个tmpfs的文件系统,该文件系统是基于内存的,大小是随着物理内存的大小动态改变的,一般为物理内存的一半;tmpfs文件系统可以使用物理内容,也可以使用swap。
那么根据这么内容,来处理问题
首先看一下物理内存和swap的大小
[root@night ~]# free -m
修改tmpfs大小,用root用户
[oracle@oracle dbs]$ cat /etc/fstab
#
# /etc/fstab
# Created by anaconda on Tue Feb 29 12:02:06 2000
#
# 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_datatem-lv_root / ext4 defaults 1 1
UUID=69d24d15-5478-46ce-8d9c-7050518b4af6 /boot ext4 defaults 1 2
/dev/mapper/vg_datatem-lv_home /home ext4 defaults 1 2
/dev/mapper/vg_datatem-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
shmfs /dev/shm/ tmpfs size=7g 0
重新挂载/dev/shm
[root@oracle ~]# umount /dev/shm/
[root@oracle ~]# mount /dev/shm
[root@oracle ~]# mount
/dev/mapper/vg_datatem-lv_root on / type ext4 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
tmpfs on /dev/shm type tmpfs (rw,rootcontext="system_u:object_r:tmpfs_t:s0")
/dev/sda1 on /boot type ext4 (rw)
/dev/mapper/vg_datatem-lv_home on /home type ext4 (rw)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
gvfs-fuse-daemon on /root/.gvfs type fuse.gvfs-fuse-daemon (rw,nosuid,nodev)
tmpfs on /dev/shm type tmpfs (rw,rootcontext="system_u:object_r:tmpfs_t:s0")
[root@oracle ~]# df - Th /dev/shm
Filesystem 1K-blocks Used Available Use% Mounted on
tmpfs 16507200 0 16507200 0% /dev/shm
现在重新启动oracle服务(切换到oracle用户)
[root@oracle ~]# su - oracle
[oracle@oracle ~]$ df -Th /dev/shm
Filesystem Type Size Used Avail Use% Mounted on
tmpfs tmpfs 16G 0 16G 0% /dev/shm
[oracle@oracle ~]$ sqlplus /nolog
SQL> conn sys / as sysdba
SQL> startup
ORACLE instance started.
Total System Global Area 1.3495E+10 bytes
Fixed Size 2218032 bytes
Variable Size 6845106128 bytes
Database Buffers 6576668672 bytes
Redo Buffers 71471104 bytes
ORA-01102: cannot mount database in EXCLUSIVE mode
SQL> show parameter memory
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
hi_shared_memory_address integer 0
memory_max_target big integer 12928M
memory_target big integer 12928M
shared_memory_address integer 0
/dev/shm大于memory_max_target的大小。
SQL> shutdown abort ----强制停止数据库
SQL> startup -----启动数据库
SQL> shutdown immediate
ORA-01507: database not mounted
解决办法:
网上搜索文档给出的答案是关于lk<SID>文件造成的。
查看该文件
[oracle@oracle ~]$ cd /usr/local/oracle/app/oracle/product/11.2.0/dbhome/dbs/
[oracle@oracle dbs]$ ls
hc_Custom.dat init.ora lkCUSTOM
hc_DBUA0.dat init.ora.3102017201154 orapwCustom
hc_orcl.dat initorcl.ora spfileCustom.ora
[oracle@oracle dbs]$ fuser -u lkCUSTOM
lkCUSTOM: 11558(oracle) 11564(oracle) 11568(oracle) 11570(oracle) 11574(oracle) 11576(oracle) 11578(oracle) 11580(oracle) 11582(oracle) 11584(oracle) 11586(oracle) 11588(oracle) 11684(oracle) 11709(oracle) 11811(oracle) 11813(oracle) 20083(oracle) 25535(oracle)
果然该文件没释放,用fuser命令kill掉
[oracle@oracle dbs]$ fuser -k lkCUSTOM
lkCUSTOM: 11558 11564 11568 11570 11574 11576 11578 11580 11582 11584 11586 11588 11684 11709 11811 11813 20083 25535
[oracle@oracle dbs]$ fuser -u lkCUSTOM
然后:
[oracle@oracle dbs]$ sqlplus /nolog
SQL*Plus: Release 11.2.0.1.0 Production on Mon Apr 10 23:08:48 2017
Copyright (c) 1982, 2009, Oracle. All rights reserved.
SQL> conn / as sysdba
Connected to an idle instance.
SQL> startup
ORACLE instance started.
Total System Global Area 1.3495E+10 bytes
Fixed Size 2218032 bytes
Variable Size 6845106128 bytes
Database Buffers 6576668672 bytes
Redo Buffers 71471104 bytes
Database mounted.
Database opened.
数据库成功open
(1)SQL> create table z_test (id number,name varchar(20));
Table created.
(2)SQL> insert into z_test select 1,'a' from dual;
1 row created.
(3)SQL> select * from z_test;
ID NAME
---------- --------------------
1 a
SQL> commit;
Commit complete.
SQL> exit
Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
[oracle@oracle ~]$ sqlplus / as sysdba ---进入数据库
SQL> create user oracle identified by "lanmao"; ----创建用户密码
User created.
SQL> grant create session to oracle; 授权用户
Grant succeeded.
SQL> grant create table to oracle;
Grant succeeded.
SQL> grant create tablespace to oracle;
Grant succeeded.
SQL> grant create view to oracle;
Grant succeeded.