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下面中文乱码问题
提速啦(www.tisula.com)是赣州王成璟网络科技有限公司旗下云服务器品牌,目前拥有在籍员工40人左右,社保在籍员工30人+,是正规的国内拥有IDC ICP ISP CDN 云牌照资质商家,2018-2021年连续4年获得CTG机房顶级金牌代理商荣誉 2021年赣州市于都县创业大赛三等奖,2020年于都电子商务示范企业,2021年于都县电子商务融合推广大使。资源优势介绍:Ceranetwo...
CheapWindowsVPS是一家成立于2007年的老牌国外主机商,顾名思义,一个提供便宜的Windows系统VPS主机(同样也支持安装Linux系列的哈)的商家,可选数据中心包括美国洛杉矶、达拉斯、芝加哥、纽约、英国伦敦、法国、新加坡等等,目前商家针对VPS主机推出5折优惠码,优惠后最低4GB内存套餐月付仅4.5美元。下面列出几款VPS主机配置信息。CPU:2cores内存:4GB硬盘:60G...
imidc对日本独立服务器在搞特别促销,原价159美元的机器现在只需要88美元,而且给13个独立IPv4,30Mbps直连带宽,不限制流量。注意,本次促销只有一个链接,有2个不同的优惠码,你用不同的优惠码就对应着不同的配置,价格也不一样。88美元的机器,下单后默认不管就给512G SSD,要指定用HDD那就发工单,如果需要多加一个/28(13个)IPv4,每个月32美元...官方网站:https:...