参考
其实主要就这几步就ok了:
-
切换用户到root
sudo su root
-
到官网下载 oracle-database-xe-18c-1.0-1.x86_64.rpm 文件到本地后,上传到服务器上,我用的上传工具是 mobaxterm
-
运行命令
yum -y localinstall oracle-database-xe-18c-1.0-1.x86_64.rpm
开始静默安装 -
中间会需要输入系统用户 sys system的密码,输入密码后记得自己保存记住。
由于我买的阿里云轻量应用服务器,只有2G内存,安装后服务器直接连不上了。。。也是很无奈,不想花钱扩容,打算濒死挽救一下,采用终极大法,重启了服务器。
然后登陆Oracle数据库。
- 先切换到Oracle用户,
su - oracle
- 再
sqlplus system
尝试登录数据库 - 果然报错:
ORA-01034: ORACLE not available
ORA-27101: shared memory realm does not exist
Linux-x86_64 Error: 2: No such file or directory
Additional information: 4150
Additional information: 280682727
Process ID: 0
Session ID: 0 Serial number: 0
网上找的解决办法大都是先sqlplus /nolog
再connect / as sysdba
后启动数据库,然而我connect / as sysdba
后还是报错:
ORA-01017: invalid username/password; logon denied
ok,顺着这个报错,参考:
问题分析 根据经验,使用sqlplus / as sysdba登陆数据库,提示权限不够,也就是我们常用的用操作系统认证方式登录数据库必须满足下面两个条件:
- 操作系統用户是否dba组
- sqlnet.ora 认证服务从NONE改为NTS
SQLNET.AUTHENTICATION_SERVICES= (NTS) --注意这里windows使用nts、linux使用all
vi /opt/oracle/product/18c/dbhomeXE/network/admin/sqlnet.ora
修改文件 sqlnet.ora
为以下内容
NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)
sqlnet.authentication_services=(ALL)
修改文件内容后再次登录
splus /nolog
connect as sysdba
startup
数据库可成功访问