[20240811]bbed使用问题.txt

来源:这里教程网 时间:2026-03-03 20:27:36 作者:

[20240811]bbed使用问题.txt --//我使用的bbed以前在11g下编译,我将相应文件打包放在一起,但是我在21c下解压,放在/home/oracle/bbed目录,执行时遇到问题: --//参考链接:[20210311]如何建立bbed安装包.txt =>https://blog.itpub.net/267265/viewspace-2762464/ $ cd bbed $ ls -l total 63376 -rwxr-xr-x. 1 oracle oinstall   255300 2021-03-10 17:19:53 bbed -rw-r--r--. 1 oracle oinstall       75 2021-03-11 09:24:38 bbed.par -rw-r--r--. 1 oracle oinstall     8704 2021-03-11 09:24:22 bbedus.msb -rwxr-xr-x. 1 oracle oinstall    10299 2021-03-11 09:24:22 bbedus.msg -rw-r--r--. 1 oracle oinstall       27 2021-03-11 08:55:01 cmd.par -rw-r--r--. 1 oracle oinstall     1352 2021-03-11 09:00:23 filelist.txt -rwxr-xr-x. 1 oracle oinstall   144776 2021-03-10 17:22:18 ld-linux-x86-64.so.2 -rwxr-xr-x. 1 oracle oinstall     3768 2021-03-10 17:22:12 libaio.so.1 -rwxr-xr-x. 1 oracle oinstall 53793394 2021-03-10 17:20:37 libclntsh.so.11.1 -rwxr-xr-x. 1 oracle oinstall  1726320 2021-03-10 17:22:06 libc.so.6 -rwxr-xr-x. 1 oracle oinstall    23360 2021-03-10 17:21:00 libdl.so.2 -rwxr-xr-x. 1 oracle oinstall   614992 2021-03-10 17:21:13 libm.so.6 -rwxr-xr-x. 1 oracle oinstall  7996693 2021-03-10 17:20:46 libnnz11.so -rwxr-xr-x. 1 oracle oinstall   114352 2021-03-10 17:22:00 libnsl.so.1 -rwxr-xr-x. 1 oracle oinstall   149968 2021-03-10 17:21:23 libpthread.so.0 -rw-r--r--. 1 oracle oinstall        0 2024-08-11 09:32:26 log.bbd -rw-r--r--. 1 oracle oinstall     4608 2021-03-11 09:26:20 lrmus.msb -rw-r--r--. 1 oracle oinstall     4433 2021-03-11 09:26:20 lrmus.msg $ strace -e open ./bbed open("/u01/app/oracle/product/11.2.0.4/dbhome_1/lib/tls/x86_64/libclntsh.so.11.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) open("/u01/app/oracle/product/11.2.0.4/dbhome_1/lib/tls/libclntsh.so.11.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) open("/u01/app/oracle/product/11.2.0.4/dbhome_1/lib/x86_64/libclntsh.so.11.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) open("/u01/app/oracle/product/11.2.0.4/dbhome_1/lib/libclntsh.so.11.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) open("/u01/app/oracle/product/21.0.0/dbhome_1/lib/tls/x86_64/libclntsh.so.11.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) open("/u01/app/oracle/product/21.0.0/dbhome_1/lib/tls/libclntsh.so.11.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) open("/u01/app/oracle/product/21.0.0/dbhome_1/lib/x86_64/libclntsh.so.11.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) open("/u01/app/oracle/product/21.0.0/dbhome_1/lib/libclntsh.so.11.1", O_RDONLY|O_CLOEXEC) = 3 --//找到!!oracle 21c下居然还有libclntsh.so.11.1这个文件,实际上这里面的11对应版本号11. open("/u01/app/oracle/product/21.0.0/dbhome_1/lib/libnnz11.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) --//没有找到.以下为了观察方便做了一些分割 open("/lib/tls/x86_64/libnnz11.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) open("/lib/tls/libnnz11.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) open("/lib/x86_64/libnnz11.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) open("/lib/libnnz11.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) open("/usr/lib/tls/x86_64/libnnz11.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) open("/usr/lib/tls/libnnz11.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) open("/usr/lib/x86_64/libnnz11.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) open("/usr/lib/libnnz11.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3 open("/lib64/tls/x86_64/libnnz11.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) open("/lib64/tls/libnnz11.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) open("/lib64/x86_64/libnnz11.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) open("/lib64/libnnz11.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) open("/usr/lib64/tls/x86_64/libnnz11.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) open("/usr/lib64/tls/libnnz11.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) open("/usr/lib64/x86_64/libnnz11.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) open("/usr/lib64/libnnz11.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) ./bbed: error while loading shared libraries: libnnz11.so: cannot open shared object file: No such file or directory +++ exited with 127 +++ --//做了4组探查, 目录分别是 /lib, /usr/lib,/lib64 ,/usr/lib64/. --//你可以发现文件libnnz11.so在本地目录是存在的,只不过没有找对应的目录.只要加入检索路径就ok了. # cat /etc/ld.so.conf.d/bbed.conf /home/oracle/bbed # ldconfig --//退出oracle会话重新登录。 $ strace -e open ./bbed open("/u01/app/oracle/product/11.2.0.4/dbhome_1/lib/tls/x86_64/libclntsh.so.11.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) open("/u01/app/oracle/product/11.2.0.4/dbhome_1/lib/tls/libclntsh.so.11.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) open("/u01/app/oracle/product/11.2.0.4/dbhome_1/lib/x86_64/libclntsh.so.11.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) open("/u01/app/oracle/product/11.2.0.4/dbhome_1/lib/libclntsh.so.11.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) open("/u01/app/oracle/product/21.0.0/dbhome_1/lib/tls/x86_64/libclntsh.so.11.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) ... open("/home/oracle/bbed/libnnz11.so", O_RDONLY|O_CLOEXEC) = 3 ... open("/u01/app/oracle/product/21.0.0/dbhome_1/nls/data/lx20001.nlb", O_RDONLY) = 3 open("/u01/app/oracle/product/21.0.0/dbhome_1/rdbms/mesg/bbedus.msb", O_RDONLY) = -1 ENOENT (No such file or directory) open("/u01/app/oracle/product/21.0.0/dbhome_1/rdbms/mesg/bbedus.msb", O_RDONLY) = -1 ENOENT (No such file or directory) open("/u01/app/oracle/product/21.0.0/dbhome_1/oracore/mesg/lrmus.msb", O_RDONLY) = 3 open("log.bbd", O_WRONLY|O_APPEND)      = 4 Message 112 not found; No message file for product=RDBMS, facility=BBED --- SIGSEGV {si_signo=SIGSEGV, si_code=SEGV_ACCERR, si_addr=0x7ffc673a5780} --- +++ killed by SIGSEGV (core dumped) +++ Segmentation fault (core dumped) --//可以发现bbedus.*文件,不会找本地的bbed目录。改变PATH环境变量也不行 --//$ export PATH=$PATH:/home/oracle/bbed/。 $ cp bbedus.ms* /u01/app/oracle/product/21.0.0/dbhome_1/rdbms/mesg/ $  ./bbed Password: BBED: Release 2.0.0.0.0 - Limited Production on Sun Aug 11 09:45:25 2024 Copyright (c) 1982, 2021, Oracle and/or its affiliates.  All rights reserved. ************* !!! For Oracle Internal Use only !!! *************** --//测试OK. --//补充测试: $ ldd bbed         linux-vdso.so.1 =>  (0x00007fffb41e2000)         libclntsh.so.11.1 => /u01/app/oracle/product/21.0.0/dbhome_1/lib/libclntsh.so.11.1 (0x00007f98a283b000)         libnnz11.so => /home/oracle/bbed/libnnz11.so (0x00007f98a2445000)         libdl.so.2 => /lib64/libdl.so.2 (0x00007f98a2241000)         libm.so.6 => /lib64/libm.so.6 (0x00007f98a1f3f000)         libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f98a1d22000)         libnsl.so.1 => /lib64/libnsl.so.1 (0x00007f98a1b09000)         libc.so.6 => /lib64/libc.so.6 (0x00007f98a1748000)         libnnz21.so => /u01/app/oracle/product/21.0.0/dbhome_1/lib/libnnz21.so (0x00007f98a0f99000)         librt.so.1 => /lib64/librt.so.1 (0x00007f98a0d91000)         libaio.so.1 => /home/oracle/bbed/libaio.so.1 (0x00007f98a0b90000)         libresolv.so.2 => /lib64/libresolv.so.2 (0x00007f98a0975000)         /lib64/ld-linux-x86-64.so.2 (0x00007f98a6be6000)         libclntshcore.so.21.1 => /u01/app/oracle/product/21.0.0/dbhome_1/lib/libclntshcore.so.21.1 (0x00007f98a03c5000) # mv /etc/ld.so.conf.d/bbed.conf /tmp/ # ldconfig --//退出oracle用户再登录执行: $ ldd bbed         linux-vdso.so.1 =>  (0x00007fff2cffb000)         libclntsh.so.11.1 => /u01/app/oracle/product/21.0.0/dbhome_1/lib/libclntsh.so.11.1 (0x00007f43dadc2000)         libnnz11.so => not found         ~~~~~~~~~~~~~~~~~~~~~~~~~         libdl.so.2 => /lib64/libdl.so.2 (0x00007f43dab95000)         libm.so.6 => /lib64/libm.so.6 (0x00007f43da893000)         libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f43da676000)         libnsl.so.1 => /lib64/libnsl.so.1 (0x00007f43da45d000)         libc.so.6 => /lib64/libc.so.6 (0x00007f43da09c000)         libnnz21.so => /u01/app/oracle/product/21.0.0/dbhome_1/lib/libnnz21.so (0x00007f43d98ed000)         librt.so.1 => /lib64/librt.so.1 (0x00007f43d96e5000)         libaio.so.1 => /lib64/libaio.so.1 (0x00007f43d94e3000)         libresolv.so.2 => /lib64/libresolv.so.2 (0x00007f43d92c8000)         /lib64/ld-linux-x86-64.so.2 (0x00007f43df16d000)         libclntshcore.so.21.1 => /u01/app/oracle/product/21.0.0/dbhome_1/lib/libclntshcore.so.21.1 (0x00007f43d8d18000) --//实际上就是一个文件libnnz11.so没有发现. $ ls -l  libnnz11.so /u01/app/oracle/product/21.0.0/dbhome_1/lib/libnnz* -rwxr-xr-x. 1 oracle oinstall  7996693 2021-03-10 17:20:46 libnnz11.so -rw-r--r--. 1 oracle oinstall  2216754 2021-07-07 08:15:14 /u01/app/oracle/product/21.0.0/dbhome_1/lib/libnnz21.a -rw-r--r--. 1 oracle oinstall  7118328 2021-07-07 08:15:44 /u01/app/oracle/product/21.0.0/dbhome_1/lib/libnnz21.so -rw-r--r--. 1 oracle oinstall 22732192 2021-07-07 08:16:20 /u01/app/oracle/product/21.0.0/dbhome_1/lib/libnnzst.a --//估计后面的数字代表oracle版本号,11表示11g,21表示21c的版本. $ cp  libnnz11.so /u01/app/oracle/product/21.0.0/dbhome_1/lib/ --//这样bbed一样可以正常使用.感觉linux也许出于安全考虑不会查找本地库文件. --//补充说明,开始我是修改LD_LIBRARY_PATH环境变量,执行许多命令会报错,不知道为什么.不死心做了上面的尝试. $ echo $LD_LIBRARY_PATH /u01/app/oracle/product/21.0.0/dbhome_1/lib:/lib:/usr/lib --//建议还是从10g拷贝对应文件ssbbded.o,sbbdpt.o,重新编译bbed,23c还是支持bbed的编译,当然我没有测试. --//参考: [20121004]11G下编译bbed.txt=> https://blog.itpub.net/267265/viewspace-745588/ gcc: /u01/app/oracle11g/product/11.2.0/db_1/rdbms/lib/ssbbded.o: No such file or directory gcc: /u01/app/oracle11g/product/11.2.0/db_1/rdbms/lib/sbbdpt.o: No such file or directory $ grep bbed ${ORACLE_HOME}/rdbms/lib/ins_rdbms.mk         $(SILENT)$(ECHO) "Linking BBED utility (bbed)" --//make -f ins_rdbms.mk $ORACLE_HOME/rdbms/lib/bbed BBED=$ORACLE_HOME/bin/bbed $ORACLE_HOME/bin/bbed --//有时间再做一次编译看看。目前暂时先拷贝libnnz11.so到相应目录.

相关推荐