在Ubuntu 16.04.4 LTS上安装Oracle Database Express Edition过程及遇到的问题

最近项目上涉及到Oracle数据库,所以抱着学习的态度,尝试在Ubuntu服务器上安装Oracle数据库,安装过程参见了网上的文章,然而在安装之时还是遇到了不少问题,以下总结了整个的安装过程,供自己以及大家参阅。

我在搜索引擎上搜索了一些安装的文章,主要参考了 How to install Oracle 11gR2 on Ubuntu 14.04?,同时,个人非常推荐 Me and My Ubuntu,本文就不再赘述安装步骤了,主要聊一下在安装步骤中遇到的问题和注意事项

首先就是要注意因为从Oracle官网上下载下来的unzip后的包为rpm,我们要把rpm包转化为deb包,然而我们使用工具转换的时候需要花费很长一段时间,而且转换的过程中没有提示输出,所以大家在等待它转化的时候要有耐心,千万不要按命令键去取消它,否则虽然只有中间过程的文件,是无法正常安装的

第二个要注意的就是文章中使用的是pico去编辑文本的,小白的我一开始也跟着去用,然而发现好不顺手,于是果断转换到了vi

第三个要注意的是文章中提到使用 sudo service procps start 去load the kernel parameters,然而我发现使用此命令后,然而发现 fs.file-max 的值并未发生变化,于是查找资料发现要restart,即需要使用sudo service procps restart才可正常装载

接下来安装完毕后,兴奋地去使用sqlplus sys as sysdba命令运行,然而,发现两个问题

第一个问题是,输入密码后,提示 ORA-01031: insufficient privileges ,查找资料后,发现在配置时,可以尝试使用”oracle“作为密码试一下,试验了一下,果然可以,可以参考trouble-shooting-oracle-11g(出自上面的Me and My Ubuntu文章)

第二个问题是,密码输入进入后,提示”Connected to an idle instance",输入“startup”提示“ORA-01078: failure in processing system parameters” 和“LRM-00109: could not open parameter file '$ORACLE_HOME/dbs/initXE.ora'”错误,这下没有在网上找答案,于是拿起了Thomas Kyte的《Oracle 编程艺术》,在书本中找到了答案,原来是因为我们的实例现在只包括一个Oracle服务器进程,此时还没有分配共享内存,也没有其他进程,ora文件为参数文件,启动实例时必须要有一个参数文件,即这个.ora文件,这个错误其实是因为我们没有这个参数文件导致的,那解决这个问题的办法就是创建这个参数文件,我们首先cd到$ORACLE_HOME/dbs文件夹,然后输入 echo db_name=XE > initXE.ora,然后我们可以使用 cat initXE.ora查看一下这个文件,此时再进入sqlplus,输入startup nomount,此时就有了实例,然后可以使用 !ipcs -a 查看,然后使用 create database; 命令创建数据库,我们可以使用 select name from v$datafile 列出构成这个数据库的文件,至此这个问题就解决啦~ 

以上就是在安装的过程中遇到的问题,希望对同样遇到这些问题的同学有一些帮助

-----------------------------------------------------------------------------------------------------------------------------------

补充:在ubuntu server上使用sqlplus命令sqlplus sys as sysdba连接时,输入正确的密码后,有时候报invalid username/password错误,非常诡异。后来尝试使用以下方式:先使用命令sqlplus /nolog 进入sqlplus,然后使用命令connect sys as sysdba,输入密码后成功登陆。更奇怪的是,随后使用sqlplus sys as sysdba,输入密码可以成功登陆(小白还是不解其中的原因)

你可能感兴趣的:(在Ubuntu 16.04.4 LTS上安装Oracle Database Express Edition过程及遇到的问题)