SQL*Plus及Oracle Instant Client需要依赖系统库文件,需提前安装以下包(以CentOS 8为例):
sudo yum install -y libaio libaio-devel glibc glibc-devel glibc-headers libgcc libgcc-devel zlib-devel
从Oracle官方网站下载对应Linux系统的新版本Instant Client包(如db_ee_linux-x64_bin_211000.zip,包含SQL*Plus)。建议选择与现有Oracle数据库版本一致的Instant Client,确保兼容性。
若已安装旧版本Oracle Instant Client,建议卸载以避免冲突:
# 删除旧版本目录(根据实际路径调整)
sudo rm -rf /u01/app/oracle/product/19.0.0/client_1
# 清理环境变量(编辑~/.bashrc或/etc/profile,删除ORACLE_HOME、PATH中旧版本路径)
unzip db_ee_linux-x64_bin_211000.zip -d /tmp
sudo mkdir -p /u01/app/oracle/product/21.1.0/db_1
sudo cp -p /tmp/db_ee_linux-x64_bin/* /u01/app/oracle/product/21.1.0/db_1/
编辑用户家目录下的.bashrc文件(如/home/oracle/.bashrc),添加以下内容:
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/21.1.0/db_1
export ORACLE_SID=your_sid # 替换为实际数据库SID
export PATH=$ORACLE_HOME/bin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib
使配置生效:
source /home/oracle/.bashrc
运行以下命令检查SQL*Plus版本:
sqlplus -v
输出应显示新版本信息(如SQL*Plus: Release 21.1.0.0.0 Production),表示升级成功。
使用新版本SQL*Plus连接数据库,验证功能正常:
sqlplus username/password@orcl # 替换为实际用户名、密码和数据库连接串
oracle)对/u01目录有读写权限(sudo chown -R oracle:oinstall /u01)。libaio等库版本不兼容问题,需调整系统库版本或选择兼容的Instant Client包。