当前时区为 UTC + 8 小时



发表新帖 回复这个主题  [ 3 篇帖子 ] 
作者 内容
1 楼 
 文章标题 : 搭建数据库服务器
帖子发表于 : 2010-10-04 21:13 

注册: 2008-05-07 19:09
帖子: 2
送出感谢: 0 次
接收感谢: 0 次
(本来想先发到博客里,不过既然从论坛里获得了帮助,还是应该首先回报论坛。)

搭建服务器原因:准备OCP,本机为win7,T7500,2G,虽然配置还行,但是运行VMvare+win7还是有些累。我有一台笔记本,一台台机,在同一内网中,所以准备在台机上安装LINUX+ORACLE10g,在本子上通过putty访问台机,以减小笔记本内存消耗

使用软件:Ubuntu 10.04版本+10201_database_linux32 win7上使用putty

参考资料
http://forum.ubuntu.org.cn/viewtopic.php?f=44&t=259376 ubuntu 9.10 安装 Oracle 10g手记

直接copy原文(某些地方直接改成我的数据,忘作者不要介意),在安装过程中遇到一些问题,与原文不一,一并指出,用蓝色字体显示

软件环境:Ubuntu10.04 wubi安装硬件配置:30GB分区,1.6GB双核CPU,1G内存1. 安装准备
安装开始前,确认你的系统符合Oracle的最小安装要求: (未检测)512 MB 内存
1 GB 交换分区
确认你已经安装了gcc, make, binutils, lesstif2, libc6, libc6-i686, libc6-dev, libstdc++5, libaio1, mawk 和 rpm 包。(千万注意:ubuntu 9.10中默认安装的是libstdc++6,而不是libstdc++5,所以需要额外下载安装,否则安装出错。下载地址:http://packages.ubuntu.com/jaunty/i386/libstdc++5/download)(我用libstdc++6实验成功,可能跟系统版本号有关
1.1. 设置用户
我们需要为安装程序创建一个oracle 用户和两个组. 首先检查它们是否已经存在:
$grep oinstall /etc/group
$grep dba /etc/group
$grep nobody /etc/group
如果它们还不在系统中,那么创建它们。
$sudo su
#addgroup oinstall
#addgroup dba
#addgroup nobody
#useradd -g oinstall -G dba oracle 这个地方问题较多,按说这种方式可以,可是我创建后oracle用户无法登陆图形化界面,后来用图形化界面安装,然后手工分配组,成功#passwd oracle
#usermod -g nobody nobody
注意:用useradd -p选项给出的密码不好用,所以我用单独的命令passwd来指定oracle用户密码。
1.2. 创建目录和设置权限
注意: oracle缺省目录在/home/oracle里,出于管理上的考虑,建议将oracle安装到一个独立的分区上,这里更改为 /opt/ora10g 和 /opt/oradata:
#mkdir -p /opt/ora10g
#mkdir -p /opt/oradata
#chown -R oracle:oinstall /opt/ora*
#chmod -R 775 /opt/ora*
1.3. 更改配置
#gedit /etc/sysctl.conf
添加以下行到 /etc/sysctl.conf 文件中:
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
更新系统, 运行:
#sysctl -p
#gedit /etc/security/limits.conf
添加以下行到 /etc/security/limits.conf 文件中:
* soft nproc 2407
* hard nproc 16384
* soft nofile 1024
* hard nofile 65536
建立软连接:
#ln -s /usr/bin/awk /bin/awk
#ln -s /usr/bin/rpm /bin/rpm
#ln -s /usr/bin/basename /bin/basename
通过创建一个新文件/etc/redhat-release并添加以下行,欺骗安装程序让它以为我们的系统是RedHat:
Red Hat Linux release 4.1
2. 安装
我是直接执行runInstaller,安装过程中遇到点bug,直接点继续,成功安装。字体的问题我没有遇到,因为Ubuntu和oracle用的都是英文。
将oracle安装文件解压得到database文件夹,然后以oracle用户身份运行该文件夹中的runInstaller文件(注意执行权限)。注意,你可以使用#su oracle的方式切换用户,但是这需要设置DISPLAY参数,还要启动XServer服务(算了,麻烦)。我直接用图形界面切换到oracle用户,打开终端,输入:
$./runInstaller -jreLoc $JAVA_HOME/jre
图形安装界面跳出。注意,-jreLoc选项是为了指定使用我们自己安装的jre环境,否则oracle使用自带的jre,图形界面的中文就会变小方块。使用该选项的前提是我们已经将jre的中文环境配置好,否则也会乱码。之后一路next安装即可,最后还需要以root身份执行两个脚本:
/opt/ora10g/oraInventory/orainstRoot.sh
/opt/ora10g/RDBMS/root.sh

安装之后使用DBCA创建数据库,发现界面还是小方块,于是修改文件:在oracle用户下进入$ORACLE_HOME/bin,用编辑器打开dbca文件,将# Directory Variables部分的JRE_DIR的值改为$JAVA_HOME/jre,保存,重新执行dbca界面正常!

上面一切做完后,需要设置环境变量,Ubuntu是在/etc/profile文件中添加
export ORACLE_HOME等环境变量,这块耗费的时间比较长,话说本来Ubuntu就不是用来装oracle的,所以资料也比较难翻。等我再总结下哪天发上来

最后是ssh服务
一般Ubuntu应该安装了ssh client,但是没有装ssh server
apt-get install openssh-server 安装
/etc/init.d/ssh start 开启服务
(ssh端口在 /etc/ssh/sshd_config文件中可查,默认22)
在终端中输入ifconfig查到本机ip,在win系统putty中输入,远程登录Ubuntu系统成功(开启putty前也可ping一下Ubuntu机器)!同时可用sqlplus



尚需解决的问题:
1。若要有多人同时远程访问数据库,是否需创建多个用户?每个用户复制给他hr表进行练习?
2。如何可以使用户在外网中照样能连接上服务器?(VPN技术还是?有懂得给指个方向)
暂时是这些,过一段时间在CentOS上装,Ubuntu毕竟不是用来做oracle的


希望以上能帮助到大家,望各位指点!


页首
 用户资料  
 
2 楼 
 文章标题 : Re: 搭建数据库服务器
帖子发表于 : 2010-11-08 23:52 
头像

注册: 2009-08-19 21:51
帖子: 50
送出感谢: 0 次
接收感谢: 0 次
先回答以下问题,希望有帮助:
1、按照我的理解,oracle一般是用户对应数据库的(数据库用户),通过权限和环境变量配置,可以不同用户操作同一个数据库,也可以一个用户操作不同数据库。
如果是操作系统用户,可以通过切换环境变量,单个操作系统用户建立n个oracle数据库实例。所以,你是需要多个远程访问系统的用户还是多个数据库用户呢?
2、要在外网链接你的服务器,有这么几个办法:
a、你申请个公网地址
b、你去申请VPN
c、如果你是内网用户,可以在路由器上作NAT.
另外,我有个问题,呵呵
根据您大作中这一句:“Ubuntu毕竟不是用来做oracle的” ,马上得到第一推论:
本人犯了个致命错误,我把oracle装在了ubuntu系统下,而且作为主数据库服务器使用,
还费劲的做了heartbeat !!!奇怪的是,跑了一年多了,超稳定且无任何问题。
咋办呢?哈哈


页首
 用户资料  
 
3 楼 
 文章标题 : Re: 搭建数据库服务器
帖子发表于 : 2010-11-09 8:12 

注册: 2008-05-07 19:09
帖子: 2
送出感谢: 0 次
接收感谢: 0 次
ciciluter 写道:
先回答以下问题,希望有帮助:
1、按照我的理解,oracle一般是用户对应数据库的(数据库用户),通过权限和环境变量配置,可以不同用户操作同一个数据库,也可以一个用户操作不同数据库。
如果是操作系统用户,可以通过切换环境变量,单个操作系统用户建立n个oracle数据库实例。所以,你是需要多个远程访问系统的用户还是多个数据库用户呢?
2、要在外网链接你的服务器,有这么几个办法:
a、你申请个公网地址
b、你去申请VPN
c、如果你是内网用户,可以在路由器上作NAT.
另外,我有个问题,呵呵
根据您大作中这一句:“Ubuntu毕竟不是用来做oracle的” ,马上得到第一推论:
本人犯了个致命错误,我把oracle装在了ubuntu系统下,而且作为主数据库服务器使用,
还费劲的做了heartbeat !!!奇怪的是,跑了一年多了,超稳定且无任何问题。
咋办呢?哈哈


谢谢你的解答
现在数据库映射到一个公网IP上,可以从任何地方访问
第一句解答我没看明白,实验室有很多人,我想每人分配一个用户,但是如果他们都具有删除权限的话,他们在访问hr用户表的时候可以删除其中的某些列或是表,如何解决?
在ubuntu上安装oracle时,要把发行版改成红帽或是其他版本,这是我说“Ubuntu毕竟不是用来做oracle的”的原因,您认为呢?


页首
 用户资料  
 
显示帖子 :  排序  
发表新帖 回复这个主题  [ 3 篇帖子 ] 

当前时区为 UTC + 8 小时


在线用户

正在浏览此版面的用户:没有注册用户 和 1 位游客


不能 在这个版面发表主题
不能 在这个版面回复主题
不能 在这个版面编辑帖子
不能 在这个版面删除帖子
不能 在这个版面提交附件

前往 :  
cron
本站点为公益性站点,用于推广开源自由软件,由 DiaHosting VPSBudgetVM VPS 提供服务。
我们认为:软件应可免费取得,软件工具在各种语言环境下皆可使用,且不会有任何功能上的差异;
人们应有定制和修改软件的自由,且方式不受限制,只要他们自认为合适。

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
简体中文语系由 王笑宇 翻译