解决ORA-12514,SQLPlus连接localhost:1521失败?

启动Oracle数据库服务

切换至Oracle用户

su - oracle  # 必须使用Oracle安装账户

启动监听器(Listener)

lsnrctl start  # 启动监听服务
lsnrctl status # 验证状态(显示"STATUS=READY"即成功)

启动数据库实例

sqlplus / as sysdba  # 以DBA身份登录SQL*Plus
SQL> STARTUP;        # 启动数据库实例
SQL> SELECT status FROM v$instance;  # 验证状态(返回"OPEN"即成功)

设置开机自启(可选)

sudo systemctl enable oracle-rdbms.service  # 适用于配置了Systemd的系统

连接Oracle数据库的常用方法

*命令行工具(SQLPlus)**

sqlplus username/password@hostname:port/service_name```
#### 2. **图形化工具(推荐)**
- **Oracle SQL Developer**  
  下载地址:[Oracle官网](https://www.oracle.com/database/sqldeveloper/)  
  配置步骤:  
  1. 输入主机名、端口(默认1521)、服务名(如ORCLCDB)  
  2. 填写用户名/密码  
  3. 测试连接 → 保存
- **DBeaver**  
  开源工具,支持多数据库([官网下载](https://dbeaver.io/))
#### 3. **通过Python脚本连接**
```python
import cx_Oracle
conn = cx_Oracle.connect('user', 'password', 'host:port/service_name')
cursor = conn.cursor()
cursor.execute("SELECT * FROM dual")
print(cursor.fetchone())

常见问题解决

监听器启动失败

  • 原因:端口冲突或配置错误
  • 解决
    lsnrctl stop          # 停止监听
    vi $ORACLE_HOME/network/admin/listener.ora  # 检查端口(默认1521)
    lsnrctl start         # 重新启动

数据库无法OPEN

  • 错误ORA-01081: cannot start already-running instance
    SQL> SHUTDOWN IMMEDIATE;  # 先关闭实例
    SQL> STARTUP;             # 重新启动
  • 错误ORA-01157: cannot identify/lock data file
    检查数据文件路径:

    SQL> SELECT name FROM v$datafile;  # 验证文件是否存在

连接超时

  • 检查防火墙:
    sudo firewall-cmd --list-ports | grep 1521  # 查看端口开放
    sudo firewall-cmd --add-port=1521/tcp --permanent  # 开放端口
  • 验证服务名:
    tnsping ORCLCDB  # 测试服务名解析

安全注意事项

  1. 最小权限原则:避免使用sysdba执行常规操作。
  2. 定期备份
    RMAN> BACKUP DATABASE PLUS ARCHIVELOG;  # 使用RMAN工具
  3. 更新补丁:定期安装Oracle Critical Patch Updates(CPU)。

引用说明

  • Oracle官方文档:Database Administrator’s Guide
  • Linux服务管理:Systemd手册
  • 连接工具参考:SQL Developer教程

重要提示:操作前确保已正确安装Oracle数据库(包括环境变量ORACLE_HOMEPATH配置),生产环境建议由专业DBA执行关键操作。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/4773.html

(0)
酷番叔酷番叔
上一篇 2025年6月17日 13:44
下一篇 2025年6月17日 14:08

相关推荐

  • Linux中合并解压多个压缩包的具体方法是什么?

    在Linux系统中,合并与解压操作通常涉及处理分卷压缩文件或多个独立压缩包的场景,常见于大文件传输、备份存储等场景,合并解压的核心思路是:先将分卷压缩文件或多个独立压缩包合并为单一完整文件,再通过对应工具解压;或直接解压后合并解压出的内容,本文将结合不同压缩格式(如tar.gz、zip、rar、7z等),详细说……

    2025年9月9日
    4100
  • Linux系统如何查看当前在线用户数量?

    在Linux系统中,用户管理是系统运维的基础操作之一,准确掌握系统中用户的状态和数量对于安全管控、资源分配等至关重要,Linux提供了多种命令和工具来查询用户信息,包括当前登录用户、系统总用户数、活跃用户等,不同场景下需要选择合适的命令,本文将详细介绍这些查询方法,并结合实际示例和表格对比,帮助用户全面掌握Li……

    2025年10月6日
    3000
  • 如何编译两个C文件生成可执行文件?

    在Linux系统中,Makefile是自动化编译的核心工具,尤其适用于管理多文件项目,它通过定义依赖关系和构建规则,显著提升开发效率,以下是详细指南:Makefile基础结构一个Makefile由规则组成,每条规则包含三个部分:目标(target): 依赖(dependencies) 命令(commands……

    2025年6月20日
    8600
  • Linux如何关闭tty4终端?

    在Linux系统中,tty(Teletype)是文本模式的虚拟控制台,tty1至tty6是默认提供的6个文本终端,其中tty4通常作为备用终端存在,若需关闭tty4,本质上是禁用或停止其对应的getty(getty)服务,该服务负责监听终端并处理用户登录请求,以下是具体操作步骤及注意事项,理解tty4与gett……

    2025年10月8日
    3000
  • Linux如何创建新用户?

    在Linux系统中,用户管理是系统运维的基础操作之一,创建新用户是确保系统安全、实现多用户协作的关键步骤,Linux通过用户(User)和用户组(Group)的概念实现权限隔离,每个用户拥有唯一的UID(用户标识符)和GID(组标识符),通过权限控制文件访问、命令执行等操作,本文将详细介绍Linux中创建新用户……

    2025年8月27日
    5700

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信