--一次oracle安裝錯誤,oracle version:11.2.0.1.0
[root@localhost ~]# cat /etc/issue
\S
Kernel \r on an \m
[root@localhost ~]# cat /etc/redhat-release
CentOS Linux release 7.3.1611 (Core)
[root@localhost ~]# rpm -q --qf '%{NAME}-%{VERSION}-%{RELEASE} (%{ARCH})\n' binutils \
> compat-libcap1 \
> compat-libstdc++ \
> gcc \
> gcc-c++ \
> glibc \
> glibc-devel \
> ksh \
> libgcc \
> libstdc++ \
> libstdc++-devel \
> libaio \
> libaio-devel \
> make \
> sysstat
binutils-2.27-34.base.el7 (x86_64)
compat-libcap1-1.10-7.el7 (x86_64)
package compat-libstdc++ is not installed
gcc-4.8.5-36.el7_6.2 (x86_64)
gcc-c++-4.8.5-36.el7_6.2 (x86_64)
glibc-2.17-260.el7_6.4 (x86_64)
glibc-2.17-260.el7_6.4 (i686)
glibc-devel-2.17-260.el7_6.4 (x86_64)
glibc-devel-2.17-260.el7_6.4 (i686)
ksh-20120801-139.el7 (x86_64)
libgcc-4.8.5-36.el7_6.2 (x86_64)
libgcc-4.8.5-36.el7_6.2 (i686)
libgcc-4.1.2-48.el5 (i386)
libstdc++-4.8.5-36.el7_6.2 (x86_64)
libstdc++-4.8.5-36.el7_6.2 (i686)
libstdc++-4.1.2-48.el5 (i386)
libstdc++-devel-4.8.5-36.el7_6.2 (x86_64)
libstdc++-devel-4.8.5-36.el7_6.2 (i686)
libaio-0.3.109-13.el7 (x86_64)
libaio-0.3.109-13.el7 (i686)
libaio-0.3.106-5 (i386)
libaio-devel-0.3.109-13.el7 (x86_64)
libaio-devel-0.3.109-13.el7 (i686)
libaio-devel-0.3.106-5 (i386)
make-3.82-23.el7 (x86_64)
sysstat-10.1.5-17.el7 (x86_64)
INFO: //usr/lib64/libstdc++.so.5: undefined reference to `memcpy@GLIBC_2.14' collect2: error: ld returned 1 exit status INFO: make: *** [ctxhx] Error 1 INFO: End output from spawned process. INFO: ---------------------------------- INFO: Exception thrown from action: make Exception Name: MakefileException Exception String: Error in invoking target 'install' of makefile '/opt/oracle/product/11.2.0/dbhome_1/ctx/lib/ins_ctx.mk'. See '/opt/oracle/oraInventory/logs/installActions2019-05-07_02-48-01PM.log' for details. Exception Severity: 1 INFO: Linking Text executables INFO: Linking Text executables INFO: The output of this make operation is also available at: '/opt/oracle/product/11.2.0/dbhome_1/install/make.log' INFO:
嘗試解決 --使用方法4
1 下載glibc-static-2.17-55.el7.x86_64.rpm安裝
if [[ ! -f /usr/lib64/libc.a ]]; then yum -y install glibc-static; fi
sed 's/.*\$(LINK_CTXHX) \$(CTXHXOBJ) \$(INSO_LINK)$/-static \/usr\/lib64\/libc.a \$(LINK_CTXHX) \$(CTXHXOBJ) \$(INSO_LINK)/g' -i /u01/app/oracle/product/11.2.0/db_1/ctx/lib/ins_ctx.mk
點擊retry,還是報錯
2 libstdc++.so.5 libstdc++.so.5.0.7 替換包,還是無效
3 重新下載低版本glibc-2.14.tar.gz 進行編譯--未驗證
鏈接:http://blog.sina.com.cn/s/blog_6c5a47d30102wfw9.html
# tar xvf glibc-2.14.tar.gz
# cd glibc-2.14
# mkdir build
# cd ./build
# ../configure --prefix=/opt/glibc-2.14
# make –j4
# make install
如果make install報錯: Can't open configuration file /opt/glibc-2.14/etc/ld.so.conf: No such file or directory
解決辦法:在make install 前輸入,touch /opt/glibc-2.14/etc/ld.so.conf,再make install
注意賬戶權限,需在opt/glibc-2.14目錄下新建文件夾
執行完之后查看:strings /opt/glibc-2.14/lib/libc.so.6 |grep GLIBC
下面3種方法的任何一種均可
1. export LD_LIBRARY_PATH=/opt/glibc-2.14/lib:$LD_LIBRARY_PATH
2. /opt/glibc-2.14/lib/libc.so.6 拷貝並重命名為/lib64/libc.so.6
3. 在makefile 編譯的最后加上: /opt/glibc-2.14/lib/libc.so.6
---有時可能存在不兼容,這種編譯還是存在一定的風險
4 在oracle網站查到說是版本對應問題
https://community.oracle.com/thread/3635853
由於是centos 7.3,oracle版本是官網下載的11.2.0.1,這里提示說需要換到11.2.0.3 or higher
最后上傳11.2.0.4版本,安裝沒有報錯,成功。