Get the App
SLTechnology News&Howtos  ›  Database  › 

The solution to the failure of CentOS7.5 to start sqlplus

Shulou Source: shulou.com Published: 2022-05-31 18:37:20 09月10日 Update

This article introduces the relevant knowledge of "the solution to the failure of CentOS7.5 starting sqlplus". In the operation of actual cases, many people will encounter such a dilemma, so let the editor lead you to learn how to deal with these situations. I hope you can read it carefully and be able to achieve something!

Operating system: CentOS 7.5

Database: Oracle 11.2.0.4

Sqlplus suddenly failed to start. The error message is as follows:

Error 5 initializing SQL*Plus

NLS initialization error

The preliminary judgment is that the failure to read the nls encoding file caused the sqlplus to fail to start. Track the execution of sqlplus with strace:

[oracle@node3] $strace-t-e trace=file sqlplus

10:30:16 execve ("/ opt/app/oracle/product/11g/bin/sqlplus", ["sqlplus"], [/ * 29 vars * /]) = 0

10:30:16 access ("/ etc/ld.so.preload", R_OK) =-1 ENOENT (No such file or directory)

10:30:16 open ("/ opt/app/oracle/product/11g/lib/tls/x86_64/libsqlplus.so", O_RDONLY | O_CLOEXEC) =-1 ENOENT (No such file or directory)

10:30:16 stat ("/ opt/app/oracle/product/11g/lib/tls/x86_64", 0x7ffd81e7e460) =-1 ENOENT (No such file or directory)

10:30:16 open ("/ opt/app/oracle/product/11g/lib/tls/libsqlplus.so", O_RDONLY | O_CLOEXEC) =-1 ENOENT (No such file or directory)

10:30:16 stat ("/ opt/app/oracle/product/11g/lib/tls", 0x7ffd81e7e460) =-1 ENOENT (No such file or directory)

10:30:16 open ("/ opt/app/oracle/product/11g/lib/x86_64/libsqlplus.so", O_RDONLY | O_CLOEXEC) =-1 ENOENT (No such file or directory)

10:30:16 stat ("/ opt/app/oracle/product/11g/lib/x86_64", 0x7ffd81e7e460) =-1 ENOENT (No such file or directory)

10:30:16 open ("/ opt/app/oracle/product/11g/lib/libsqlplus.so", O_RDONLY | O_CLOEXEC) = 3

10:30:16 open ("/ opt/app/oracle/product/11g/lib/libclntsh.so.11.1", O_RDONLY | O_CLOEXEC) = 3

10:30:16 open ("/ opt/app/oracle/product/11g/lib/libnnz11.so", O_RDONLY | O_CLOEXEC) = 3

10:30:16 open ("/ opt/app/oracle/product/11g/lib/libdl.so.2", O_RDONLY | O_CLOEXEC) =-1 ENOENT (No such file or directory)

10:30:16 open ("/ opt/app/oracle/product/11g/lib/libdl.so.2", O_RDONLY | O_CLOEXEC) =-1 ENOENT (No such file or directory)

10:30:16 open ("/ opt/app/oracle/product/11g/lib32/tls/x86_64/libdl.so.2", O_RDONLY | O_CLOEXEC) =-1 ENOENT (No such file or directory)

10:30:16 stat ("/ opt/app/oracle/product/11g/lib32/tls/x86_64", 0x7ffd81e7e3d0) =-1 ENOENT (No such file or directory)

10:30:16 open ("/ opt/app/oracle/product/11g/lib32/tls/libdl.so.2", O_RDONLY | O_CLOEXEC) =-1 ENOENT (No such file or directory)

10:30:16 stat ("/ opt/app/oracle/product/11g/lib32/tls", 0x7ffd81e7e3d0) =-1 ENOENT (No such file or directory)

10:30:16 open ("/ opt/app/oracle/product/11g/lib32/x86_64/libdl.so.2", O_RDONLY | O_CLOEXEC) =-1 ENOENT (No such file or directory)

10:30:16 stat ("/ opt/app/oracle/product/11g/lib32/x86_64", 0x7ffd81e7e3d0) =-1 ENOENT (No such file or directory)

10:30:16 open ("/ opt/app/oracle/product/11g/lib32/libdl.so.2", O_RDONLY | O_CLOEXEC) =-1 ENOENT (No such file or directory)

10:30:16 stat ("/ opt/app/oracle/product/11g/lib32", 0x7ffd81e7e3d0) =-1 ENOENT (No such file or directory)

10:30:16 open ("/ lib/tls/x86_64/libdl.so.2", O_RDONLY | O_CLOEXEC) =-1 ENOENT (No such file or directory)

10:30:16 stat ("/ lib/tls/x86_64", 0x7ffd81e7e3d0) =-1 ENOENT (No such file or directory)

10:30:16 open ("/ lib/tls/libdl.so.2", O_RDONLY | O_CLOEXEC) =-1 ENOENT (No such file or directory)

10:30:16 stat ("/ lib/tls", 0x7ffd81e7e3d0) =-1 ENOENT (No such file or directory)

10:30:16 open ("/ lib/x86_64/libdl.so.2", O_RDONLY | O_CLOEXEC) =-1 ENOENT (No such file or directory)

10:30:16 stat ("/ lib/x86_64", 0x7ffd81e7e3d0) =-1 ENOENT (No such file or directory)

10:30:16 open ("/ lib/libdl.so.2", O_RDONLY | O_CLOEXEC) =-1 ENOENT (No such file or directory)

10:30:16 stat ("/ lib", {st_mode=S_IFDIR | 0555, st_size=4096,...}) = 0

10:30:16 open ("/ usr/lib/tls/x86_64/libdl.so.2", O_RDONLY | O_CLOEXEC) =-1 ENOENT (No such file or directory)

10:30:16 stat ("/ usr/lib/tls/x86_64", 0x7ffd81e7e3d0) =-1 ENOENT (No such file or directory)

10:30:16 open ("/ usr/lib/tls/libdl.so.2", O_RDONLY | O_CLOEXEC) =-1 ENOENT (No such file or directory)

10:30:16 stat ("/ usr/lib/tls", 0x7ffd81e7e3d0) =-1 ENOENT (No such file or directory)

10:30:16 open ("/ usr/lib/x86_64/libdl.so.2", O_RDONLY | O_CLOEXEC) =-1 ENOENT (No such file or directory)

10:30:16 stat ("/ usr/lib/x86_64", 0x7ffd81e7e3d0) =-1 ENOENT (No such file or directory)

10:30:16 open ("/ usr/lib/libdl.so.2", O_RDONLY | O_CLOEXEC) =-1 ENOENT (No such file or directory)

10:30:16 stat ("/ usr/lib", {st_mode=S_IFDIR | 0555, st_size=4096,...}) = 0

10:30:16 open ("/ etc/ld.so.cache", O_RDONLY | O_CLOEXEC) = 3

10:30:16 open ("/ lib64/libdl.so.2", O_RDONLY | O_CLOEXEC) = 3

10:30:16 open ("/ opt/app/oracle/product/11g/lib/libm.so.6", O_RDONLY | O_CLOEXEC) =-1 ENOENT (No such file or directory)

10:30:16 open ("/ opt/app/oracle/product/11g/lib/libm.so.6", O_RDONLY | O_CLOEXEC) =-1 ENOENT (No such file or directory)

10:30:16 open ("/ lib/libm.so.6", O_RDONLY | O_CLOEXEC) =-1 ENOENT (No such file or directory)

10:30:16 open ("/ usr/lib/libm.so.6", O_RDONLY | O_CLOEXEC) =-1 ENOENT (No such file or directory)

10:30:16 open ("/ lib64/libm.so.6", O_RDONLY | O_CLOEXEC) = 3

10:30:16 open ("/ opt/app/oracle/product/11g/lib/libpthread.so.0", O_RDONLY | O_CLOEXEC) =-1 ENOENT (No such file or directory)

10:30:16 open ("/ opt/app/oracle/product/11g/lib/libpthread.so.0", O_RDONLY | O_CLOEXEC) =-1 ENOENT (No such file or directory)

10:30:16 open ("/ lib/libpthread.so.0", O_RDONLY | O_CLOEXEC) =-1 ENOENT (No such file or directory)

10:30:16 open ("/ usr/lib/libpthread.so.0", O_RDONLY | O_CLOEXEC) =-1 ENOENT (No such file or directory)

10:30:16 open ("/ lib64/libpthread.so.0", O_RDONLY | O_CLOEXEC) = 3

10:30:16 open ("/ opt/app/oracle/product/11g/lib/libnsl.so.1", O_RDONLY | O_CLOEXEC) =-1 ENOENT (No such file or directory)

10:30:16 open ("/ opt/app/oracle/product/11g/lib/libnsl.so.1", O_RDONLY | O_CLOEXEC) =-1 ENOENT (No such file or directory)

10:30:16 open ("/ lib/libnsl.so.1", O_RDONLY | O_CLOEXEC) =-1 ENOENT (No such file or directory)

10:30:16 open ("/ usr/lib/libnsl.so.1", O_RDONLY | O_CLOEXEC) =-1 ENOENT (No such file or directory)

10:30:16 open ("/ lib64/libnsl.so.1", O_RDONLY | O_CLOEXEC) = 3

10:30:16 open ("/ opt/app/oracle/product/11g/lib/libc.so.6", O_RDONLY | O_CLOEXEC) =-1 ENOENT (No such file or directory)

10:30:16 open ("/ opt/app/oracle/product/11g/lib/libc.so.6", O_RDONLY | O_CLOEXEC) =-1 ENOENT (No such file or directory)

10:30:16 open ("/ lib/libc.so.6", O_RDONLY | O_CLOEXEC) =-1 ENOENT (No such file or directory)

10:30:16 open ("/ usr/lib/libc.so.6", O_RDONLY | O_CLOEXEC) =-1 ENOENT (No such file or directory)

10:30:16 open ("/ lib64/libc.so.6", O_RDONLY | O_CLOEXEC) = 3

10:30:16 open ("/ opt/app/oracle/product/11g/lib/libaio.so.1", O_RDONLY | O_CLOEXEC) =-1 ENOENT (No such file or directory)

10:30:16 open ("/ opt/app/oracle/product/11g/lib/libaio.so.1", O_RDONLY | O_CLOEXEC) =-1 ENOENT (No such file or directory)

10:30:16 open ("/ opt/app/oracle/product/11g/lib/libaio.so.1", O_RDONLY | O_CLOEXEC) =-1 ENOENT (No such file or directory)

10:30:16 open ("/ lib/libaio.so.1", O_RDONLY | O_CLOEXEC) =-1 ENOENT (No such file or directory)

10:30:16 open ("/ usr/lib/libaio.so.1", O_RDONLY | O_CLOEXEC) =-1 ENOENT (No such file or directory)

10:30:16 open ("/ lib64/libaio.so.1", O_RDONLY | O_CLOEXEC) = 3

10:30:16 open ("/ opt/app/oracle/product/11g/lib/libsqlplusic.so", O_RDONLY | O_CLOEXEC) =-1 ENOENT (No such file or directory)

10:30:16 open ("/ opt/app/oracle/product/11g/lib/libociicus.so", O_RDONLY | O_CLOEXEC) =-1 ENOENT (No such file or directory)

10:30:16 open ("/ opt/app/oracle/product/11g/lib/libociei.so", O_RDONLY | O_CLOEXEC) =-1 ENOENT (No such file or directory)

10:30:16 open ("/ opt/app/oracle/product/11g/nls/data/lx1boot.nlb", O_RDONLY) = 3

10:30:16 open ("/ opt/app/oracle/product/11g/nls/data/lx00001.nlb", O_RDONLY) = 3

10:30:16 open ("/ opt/app/oracle/product/11g/nls/data/lx20354.nlb", O_RDONLY) = 3

Error 5 initializing SQL*Plus

NLS initialization error

10:30:16 + exited with 1 +

You can see that the lx20354.nlb file is waiting to be read, causing the sqlplus to exit. View this file:

[oracle@node3 data] $ll / opt/app/oracle/product/11g/nls/data/lx20354.nlb

Ls: cannot access / opt/app/oracle/product/11g/nls/data/lx20354.nlb: No such file or directory

It was found that this file was missing. Therefore, it can be concluded that the loss of the encoding file lx20354.nlb caused the sqlplus startup failure.

Solution:

Copy the missing files from the running instances of the same version and put them in the appropriate directory to solve the problem.

This is the end of the content of "solution to the failure of CentOS7.5 starting sqlplus". Thank you for reading. If you want to know more about the industry, you can follow the website, the editor will output more high-quality practical articles for you!

Tags: File method content more knowledge coding process practicality achievement next operating system information dilemma instance reality situation copy data database article Apple Docker Huawei Linux macOS MariaDB Microsoft MySQL NVidia OPPO Reno Linux Xiaomi NVidia Shulou Information Apple