Solaris 和linux 之oracle 数据库的安装

本篇博文前面是一些基础知识介绍,后面才是总结篇。

一、在solaris上面装oracle 10g教程

目前官网已经没有32位的oracle11g了,取而代之的都是64位的oracle11g,为了能在32位的solaris系统上安装oracle,目前只能安装oracle 10g。

1)为solaris添加硬盘

2)安装oracle10g

参考资料: http://blog.csdn.net/nemo2011/article/details/8183326 Solaris添加新硬盘

http://blog.163.com/wghbeyond@126/blog/static/35166181200942351523927/

Solaris系统下安装oracle10总结  

http://blog.163.com/wghbeyond@126/blog/static/35166181200942351523927/     Solaris10上安装64Oracle9201  

 

准备工作:

+PATH(环境变量)

完成以上5部分,就可以安装oracle了。

图形界面下,一定用oracle用户登录,不要用root登录,然后su 到oracle用户,这样会登录失败。

经验证,32位的solaris无法安装 64位的oracle软件。

http://wenku.baidu.com/link?url=iXWTWpFZceD-TEKPO919x5Gm-ZLchJ4FmYoul5Zz4xFk--qC0XxKHMrQrL7CsE2C3f_zdfKs8TixykuNoAo9FySreNR1eP5FKMNyKKmDA6e

oracle for solaris 安装错误FAQ

参考资料: http://www.itpub.net/thread-1849937-1-1.html Oracle 11gR2对应的Solaris (x86-64)版本操作系统的Solaris版本。

错误如下:

 

解决方案:

  1. 换系统
  2. 换oracle 10g 32位

以下采用方案2,换oracle 10g,我们需要到window里面的浏览器 bing里面去搜索。网址如下:

www.linuxidc.com/Linux/2015-02/113620.htm

 

 注意:上面的方法本人没有实测,不知道可行与否,但从理论上来说应该没问题。

 

二、在redhat上面装oracle 11g教程

参考资料:

http://blog.163.com/dongfang_1226/blog/static/5867778020126281245271/

RedHat Linux 安装oracle11g 

 

由于在安装solaris过程中,需要安装一些软件,但之前的镜像文件没有加载进去,所以我们需要下载iso文件,然后从里面安装一些依赖的文件。

http://blog.chinaunix.net/uid-18997108-id-273965.html RHEL5.1下安装GCC编译环境 解决依赖性问题

http://www.linuxidc.com/Linux/2011-09/43704.htm

Red Hat Enterprise Linux Server 6.0官方多国语言版光盘镜像下载

 注意:对于软件的安装,我们一般用  rpm  -Uvh   xxxx*  去安装。而且,我们一开始可能不知道缺少什么软件,这个没关系,一般在安装oracle的过程中,会有一个检查,

          检查完之后,我们就会知道哪里配置有问题,哪里缺少什么等等。我们安装oracle一般在oracle用户下完成的,而安装软件,我们一般克隆一个会话(在CRT上面)。

          然后,切换到root用户,在root下面安装缺少的软件。安装完之后,可以重新检测一次。

按照上面的程序即可安装完数据库系统:

有些软件没安装直接忽略,直接安装就行。

安装完之后,输入:

启动监听 lsnrctl start    (Listener control start)

启动数据库和实例 sqlplus /nlog conn /as sysdba

SQL > startup

 

对于CRT端,我们可以使用oracle登录,其他用户都不行。

 

遇到这种错误怎么办?

解决方案:

http://blog.csdn.net/zhanghai412/article/details/7947460 ORA-01034: ORACLE not available

主要是因为 没有 startup ,回车,我们可以看到很多。

 

数据库密码: Db123456 用户名和安装上的一样。

 

如果需要远程连接机子上面的数据库:(如何在window里面连接linux上面的oracle)

解决方案:需要下载oracle客户端软件即可解决,但是要解决兼容性问题,下面是解决的方案。

  1. 在linux下面安装oracle数据库,数据库可以从官网下载,本环境用的是 oracle R2.

          参考文章:http://blog.163.com/dongfang_1226/blog/static/5867778020126281245271/ RedHat Linux 安装oracle11g 

  2、由于是在linux上面安装的oracle,可以认为此版本为服务器端,我们如果想远程登录此服务器,需要安装客户端以及第三方操作数据库的软件。

1)下载 oracle_client (用的win32 版本,本人系统为64位机器),和pl/sql 32位,上面有介绍到。

参考资料: http://www.cnblogs.com/ymj126/p/3712727.html 解决64位机子,安装pl/sql 问题。

http://www.cnblogs.com/kane1990/p/OracleNetManager.html 解决利用oracle 配置tns服务器问题。

2)安装2中提到的两个软件,(安装oracle_clint会有选项,选择一个完全版。安装pl/sql 安装目录下,不要有program file(x86)的字样,否则pl/sql无法识别)。

3、完成后,利用oracle_client里面的 net manager 去配置tns服务,以及pl/sql 服务。

截图如下:

         Windows里面的配置:(通过 net manager 配置会自动出现tnsnames.ora ,这个文件其实是一个映射关系,里面用键值对的方式实现的。当然,

        我们还可以不对oracle_client进行安装也可以,解压完之后,对里面的文件直接进行配置,这样就不用安装了)。(:下面的内容也可以自己写脚本加进去)

               

               Tnsnames.ora 内容:

                 # tnsnames.ora Network Configuration File: E:\app\zhuxuekui\product\11.2.0\client_1\network\admin\tnsnames.ora

                 # Generated by Oracle configuration tools.

ORCL =

(DESCRIPTION =

(ADDRESS_LIST =

(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.132.11)(PORT = 1521))

)

(CONNECT_DATA =

(SERVICE_NAME = orcl)

)

)

Plsql 配置:

            (plsql 激活的时候,长的空格填写长的一串)

 

 

4、如何连接linux上面的数据库
      完成上面的配置后,我们可能还无法连接数据库,一种原因是防火墙没关闭。第二种原因就是监听程序未打开。当然,这两种错误的错误信息打印给用户显示的是不同的信息。

dos下验证: tnsping sys/admin@orcl as sysdba

1)两边的防火墙问题 (如果一边的防火墙是开着的,则在dos下,会提示 time out)

解决方案:windows下面好处理,直接关闭防火墙即可。

Linux下为了安全性考虑,可以只关闭某个端口的防火墙。

参考资料:http://bbs.chinaunix.net/thread-2187037-1-1.html 如何关闭linux默认的防火墙

方法一:关闭或者打开某个防火墙:chkconfig –level xxx iptables on/off

查看: chkconfig –list|grep iptables

方法二:service iptables start/stop

 

配置防火墙:

-A INPUT –m state –state NEW –m tcp –p tcp –dport 1521 –j ACCEPT 允许1521端口通过防火墙,位置放在默认的22端口这条规则下。

配置完之后,重启防火墙。 /etc/init.d/iptables restart

(下面这张表在 /etc/sysconfig/iptables 下面)

 

防火墙正确的时候,应该是这样的,chkconifg –list|grep iptables ,因为我用的是 eth6,但他是关闭的,所以dos下面没有出现timeout错误。

2)除了防火墙问题,还有就是linux这边的监听程序的配置文件

必须要配置,文件位置 安装目录下面的network

参考资料:请问能Windows下连接虚拟机上的oracle数据库吗?这个没配置好,会出现 no listener 的错误。

 

解决方案:

       一、配置文件

      灵活运用tab键,以及bing搜索引擎。

    务必配置 SID,不然找不到实例。

     二、开启监听服务

           务必出现 service orcl has 1 instance 才算成功,不然 比如出现 no service 就是失败的。

           查看状态,至此配置成功。

5、关于登录,密码找回等问题。

解决:connection as SYS should be as SYSDBA or SYSOPER 的问题。

参考资料: http://bbs.csdn.net/topics/350111348

登录 : sqlplus sys/admin@orcl as sysdba

解决:忘记密码,密码解锁的问题。

参考资料:http://blog.csdn.net/devillyd/article/details/7219817

Sqlplus/as sysdba

posted on 2015-04-15 12:13  zhuxuekui3  阅读(952)  评论(0编辑  收藏  举报