Ubuntu14. 10安装oracle11g
困扰了一周终于弄出来了。
网上教程虽多但大都是只言片语的截取外加个体安装情况各异很多地方还是需要自己解决
现记录下来给自己留档顺便供需要的人参考
如果你还没有安装ubuntu系统或是感觉自己的ubuntu系统版本低想换的话请在分区时把交换分区(s wap)设定得大一些最少4 G要不在安装oracle做前置条件检查时他会提示交换空间不够orac le要求swap最少为3.69G
*oracle的安装前提保证机器已安装jdkubuntu l i nux默认有自己的OpenJdk交给超级牛力去做就行终端键入
$sudo apt-get install openjdk-7-jre
$sudo apt-get install openjdk-7-jdk
ps:我因为对ubuntu不熟悉一上来自己安装了从官网下的jdk
1.7_u60 for linux所以后来机器有两个jdk,万幸也没冲突懒得理了j dk安完以后可以去终端看一下版本信息java -version
下面开始进入正题安装oracle:
1.更新系统: (这步我没做 14.04是ubun tu最新一版系统系统服务差不多都是比较新的版本外加自己手工安过一堆deb包)sudo apt-get updatesudo apt-get dist-upgrade
*2.安装依赖包很重要的一步
看一下自己的软件源,因为大多数情况要在上面增加源地址所以用gedit不用catsudo gedit /etc/apt/sources. list
这样可以打开你现有的源列表。 注意是sources不是source)
为了能顺利安装32位兼容包ia32-libs需要在源中增加这些行(也有人说装了g++-multilib就不用考虑ia32-libs了我没试过) deb http://extras.ubuntu. com/ubuntu trusty maindeb-src http://extras.ubuntu.com/ubuntu trusty maindeb http://archive.ubuntu. com/ubuntu/ raring main restricteduniverse multiverse
更新源文件后保存。
下面就可以利用超级牛力执行依赖包的安装下面的全部要装上否则后头图形界面安装途中会报错仔细一个一个查一遍终端键入sudo apt-get install bzip2sudo apt-get install elfutilssudo apt-get install automakesudo apt-get install autotools-devsudo apt-get install binutilssudo apt-get install expatsudo apt-get install gawksudo apt-get install gccsudo apt-get install gcc-multilibsudo apt-get install g++-multilibsudo apt-get install ia32-libssudo apt-get install kshsudo apt-get install lesssudo apt-get install lesstif2sudo apt-get install lesstif2-devsudo apt-get install lib32z1
sudo apt-get install libaio1sudo apt-get install libaio-devsudo apt-get install libc6-devsudo apt-get install libc6-dev-i386sudo apt-get install libc6-i386sudo apt-get install libelf-devsudo apt-get install libltdl-devsudo apt-get install libmotif4sudo apt-get install libodbcinstq4-1 libodbcinstq4-1:i386sudo apt-get install libpth-devsudo apt-get install libpthread-stubs0sudo apt-get install libpthread-stubs0-devsudo apt-get install libstdc++5sudo apt-get install lsb-cxxsudo apt-get install makesudo apt-get install openssh-serversudo apt-get install pdkshsudo apt-get install rlwrapsudo apt-get install rpmsudo apt-get install sysstatsudo apt-get install unixodbcsudo apt-get install unixodbc-devsudo apt-get install unzipsudo apt-get install x11-utilssudo apt-get install zlibc
*3.检查系统变量
/sbin/sysctl -a | grep sem
/sbin/sysctl -a | grep shm
/sbin/sysctl -a | grep file-max
/sbin/sysctl -a | grep aio-max
/sbin/sysctl -a | grep ip_local_port_range
/sbin/sysctl -a | grep rmem_default
/sbin/sysctl -a | grep rmem_max
/sbin/sysctl -a | grep wmem_default
/sbin/sysctl -a | grep wmem_max
然后根据上面命令中得到的参数值在/etc/sysctl.conf中增加对应数据(上面查完以后用笔记一下吧sudo gedit /etc/sysctl.conf
把sysctl.conf中的以下内容用查得的值填上f s.a i o-max-nr = f s.f i le-max = kernel. shmall = kerne l. shmmax = kerne l. shmmni = kernel. sem = net. ipv4. ip_local_port_range = net. core.rmem_default =
net. core.rmem_max =
net. core.wmem_default =
net. core.wmem_max =
运行一下命令更新内核参数sysctl –p
4.添加对当前用户的内核限制在/etc/security/limits.conf文件中增加以下数据(XXX为你当前用户名)
XXX soft nproc 2047
XXX hard nproc 16384
XXX soft nofile 1024
XXX hard nofile 65536
XXX soft stack 10240
5.检查/etc/pam.d/login增加以下行有了就不用增加了session required pam_limits. so
检查/etc/pam.d/su没有以下行就自己加上session required pam_limits. so
6.oracle默认不支持ubuntu需要欺骗一下oracle安装程序看不懂没关系按着做就行了我也不懂mkdir /usr/lib64ln -s /etc /etc/rc.dln -s /lib/x86_64-linux-gnu/libgcc_s. so. 1 /lib64/ln -s /usr/bin/awk /bi n/awkln -s /usr/bin/basename /bin/basenameln -s /usr/bin/rpm /bin/rpmln-s /usr/lib/x86_64-linux-gnu/libc_nonshared.a /usr/lib64/ln -s /usr/lib/x86_64-linux-gnu/libpthread_nonshared.a/usr/lib64/ln -s /usr/lib/x86_64-linux-gnu/libstdc++. so.6 /lib64/ln -s /usr/lib/x86_64-linux-gnu/libstdc++. so.6 /usr/lib64/echo ‘Red Hat Linux release 5′ > /etc/redhat-release
7.配置oracle的环境变量sudo gedit ~/.profile
打开.profile文件为文件中添加以下行
#Oracle
#这个写你后头要安装的路径export ORACLE_BASE=/home/xxx/app/xxxexport ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1#数据库的sidexport ORACLE_SID=orclexport ORACLE_UNQNAME=orc l
#环境变量export PATH=PATH: {ORACLE_HOME}/bin/;
8.启动oracle安装程式开始安装
我的安装程序解压在主目录oracle11g下面
所以cd进去 cd /home/XXX/oracl e11 g
为了不乱码终端先export LANG=US一下
再运行目录下面的runInstaller: ./runInstaller
可进入图形化安装界面接着根据安装向导提示做就行了
先决条件检查会提示一堆fails不用管它直接把ignore All挑上直接finish
这里要提一句如果你的s wap空间不够的话会提示交换空间不够不能继续
解决方式
可以另开一个终端用下面的命令临时提升交换空间再去recheck一下就行了free -mmkdir /swapfi le
cd /swapfi lesudo dd if=/dev/zero of=swap bs=1024 count=400000sudo mkswap -f swapsudo swapon swap
9.安装到68%时的错ins_ctx.mk的错误提示直接contiue跳过去
后面还回报错make fi le '/. . . . . .emagent.mk'出错
解决方法
另开一个终端键入命令行s ed -i ' s/^\(\s*\$(MK_EMAGENT_NMECTL)\)\s*$/\1 -l nn z 11/g'$ORACLE_HOME/sysman/l i b/i ns_emagent.mk
点击安装界面的retry,就可以继续了
类似的后面还会提示四次以下面的命令行如法炮制s e d -i ' s/^\(\$LD \$LD_RUNT I ME\) \(\$LD_OP T\)/\1
-Wl,--no-as-needed \2/g' $ORACLE_HOME/bin/genorasdkshs ed -i ' s/^\(\s*\)\(\$(OCRLI BS_DEFAULT)\)/\1
-Wl,--no-a s-n eed ed \2/g' $ORACLE_HOME/srvm/l i b/i n s_s rvm.mks ed -i ' s/^\(TNSLSNR_L INKLINE.*\$(TNSLSNR_OFI LES)\)
\(\$(LINKTTLIBS)\)/\1 -Wl,--no-as-needed \2/g'
$ORACLE_HOME/network/l ib/env_ne twork.mks e d -i ' s/^\(ORACLE_L I NKL INE.*\$(ORACLE_L I NKER)\)
\(\$(PL_FLAGS)\)/\1 -Wl,--no-as-needed \2/g'
$ORACLE_HOME/rdbms/l ib/env_rdbms.mk
10.安装完成会提示有两个sh文件需要运行
还是另开一个终端sudo /home/xxx/app/xxx/oracle/oraInventory/orainstRoot. sh
sudo
/home/xxx/app/xxx/orac le/Oracle 11gee/product/11. 2.0/dbhome_1/root. sh
安装完成
11.运行sqlplus前测试一下oracle的环境变量e cho $ORACLE_BASEe cho $ORACLE_HOMEe cho $PATH
看看是不是你配置的值没问题继续向下
12.运行数据库前测一下监听状态
如果监听没打开可以用lsnrctl start开启lsnrctl status
正常情况会显示监听信息一陀
这里如果没有输出说明无监听需要自己配置
解决方法
运行netca可以创建监听,调出图形界面设置监听
如果没有创建库此时可以dbca创建数据库.
顺便运行以下代码修复dbconsoleemca -repos dropemca -repos createemca -config dbcontrol dbemca start dbconsole
到此数据库应该就可以跑起来了
启动oracle数据库sqlpus /nologconn / as sysdbas tartup
此时会显示你创建的orcl实例已经正常加载。
13. sqldeveloper连不上oracle的问题
解决方法使用netmgr命令
打开后Oracle Net
Conf iguration->Local->Listeners->LISTENER->Add Address添加地址
Protocal: TCP/IP Host: oracle所在的IP地址
Port:1521
但是在连接时可能又报下一个异常
ORA-12505, TNS: listener does not currently know of SID givenin connect desc .
无法识别数据库的SID
此时进入/home/xxx/app/xxx/product/10.2.0/db_1/network/admin目录cd /home/xxx/app/xxx/produc t/10.2.0/db_1/network/admi n修改下面的listener.ora
SID_LIST_LI STENER =
(SID_LIST =
(SID_DESC =
(ORACL E_H OME =
/home/xxx/app/xxx/product/11.2.0/dbhome_1)
(PROGRAM = extproc)
)
上面的不用管只要是在这里添加蓝色的这段
(SID_DESC =
(GL OBAL_DBNAME = ORC L)
(ORACL E_H OME =
/home/xxx/app/xxx/product/11.2.0/dbhome_1)
(S I D_NAME = ORCL)
)
)
至此终于全部完成
补充关于sqldeveloper下面中文乱码问题
hosthatch在做美国独立日促销,可能你会说这操作是不是晚了一个月?对,为了准备资源等,他们拖延到现在才有空,这次是针对自己全球14个数据中心的VPS。提前示警:各个数据中心的网络没有一个是针对中国直连的,都会绕道而且ping值比较高,想买的考虑清楚再说!官方网站:https://hosthatch.com所有VPS都基于KVM虚拟,支持PayPal在内的多种付款方式!芝加哥(大硬盘)VPS5...
标题【萤光云双十二 全场6折 15元/月 续费同价】今天站长给大家推荐一家国内云厂商的双十二活动。萤光云总部位于福建福州,其成立于2002 年。主打高防云服务器产品,主要提供福州、北京、上海 BGP 和香港 CN2 节点。萤光云的高防云服务器自带 50G 防御,适合高防建站、游戏高防等业务。这家厂商本次双十二算是性价比很高了。全线产品6折,上海 BGP 云服务器折扣更大 5.5 折(测试了一下是金...
Hostadvice主机目录对我们的服务进行了测试,然后给PQ.hosting颁发了十大WordPress托管奖。为此,宣布PQ.Hosting将在一周内进行折扣优惠,购买和续订虚拟服务器使用优惠码:Hostadvice ,全部优惠10%。PQ.hosting,国外商家,成天于2019年,正规公司,是全球互联网注册商协会 RIPE 的成员。主要是因为提供1Gbps带宽、不限流量的基于KVM虚拟的V...