Oracle dbca时报:ORA-12547: TNS:lost contact错误的解决

yizhihongxing

当在Oracle数据库的dbca(Database Configuration Assistant)中创建数据库时,有时会出现"ORA-12547: TNS:lost contact"错误。这个错误表示dbca无法连接到Oracle数据库实例。下面是解决这个问题的完整攻略:

步骤1:确认Oracle监听器是否启动

首先确认Oracle监听器是否启动。输入以下命令检查Oracle监听器的状态:

lsnrctl status

如果Oracle监听器未启动,则需要启动Oracle监听器:

lsnrctl start

步骤2:确认tnsnames.ora文件是否正确

打开tnsnames.ora文件,确认其中是否包含正确的数据库实例别名和相关连接信息。如果tnsnames.ora文件中的连接信息不正确,则需要修改这个文件。例如:

ORCL =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.100)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = ORCL)
    )
  )

步骤3:测试连接

尝试使用sqlplus工具(或其他数据库客户端工具)连接到Oracle数据库实例来测试连接。例如:

sqlplus system/password@ORCL

如果连接成功,则可以尝试用dbca创建数据库。

步骤4:修改dbca配置文件

如果上述步骤都没有帮助,可以尝试修改dbca的配置文件。修改dbca的配置文件为:

$ORACLE_HOME/assistants/dbca/templates/dbca_template.config

在这个文件中,查找以下行:

GDBNAME=

并确保没有任何空格或其他特殊字符。例如,以下行是正确的:

GDBNAME=mynewdatabase

示例1: 修复tnsnames.ora文件中的连接信息错误

在tnsnames.ora文件中,有以下一条连接信息:

MYDB =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.10)(PORT = 1221))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = mydb)
    )
  )

这里的"HOST"和"PORT"值是不正确的。正确的值应该是"192.168.1.100"和"1521"。修改后的连接信息是:

MYDB =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.100)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = mydb)
    )
  )

示例2: 修改dbca_template.config文件中的GDBNAME

在dbca_template.config文件中,有以下一行:

GDBNAME = my new database

这行代码最后一个单词"database"之前有一个空格,所以dbca无法正确识别数据库名称。正确的行代码如下:

GDBNAME=mynewdatabase

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Oracle dbca时报:ORA-12547: TNS:lost contact错误的解决 - Python技术站

(0)
上一篇 2023年5月22日
下一篇 2023年5月22日

相关文章

  • 关于Redis的内存淘汰策略详解

    Redis内存淘汰策略详解 在Redis中,内存淘汰策略是控制内存的一个重要机制。如果Redis占用的内存超过了系统的RAM容量,就会选择一些策略来强制淘汰一些数据。Redis提供了多种内存淘汰策略,下面就详细介绍一下这些策略。 noeviction noeviction策略是默认的策略,当内存不足用于新的建议(新建的键),旧键不会被驱逐(eviction)…

    database 2023年5月22日
    00
  • Win2003系统安装SQL Server2000后1433端口未开放的解释

    Win2003系统安装SQL Server2000后1433端口未开放的解决方法如下: 1. 检查SQL Server配置 首先,需要检查SQL Server是否已配置为允许远程连接。具体步骤如下: 打开SQL Server Enterprise Manager。 在左侧导航栏中,展开“Microsoft SQL Servers”和 “[your serve…

    database 2023年5月22日
    00
  • Linux自动备份MySQL数据库脚本代码

    下面就是关于“Linux自动备份MySQL数据库脚本代码”的完整攻略: 环境准备 在开始编写脚本之前,需要确保以下环境已经安装: MySQL客户端:用于备份指定的MySQL数据库。 Shell脚本编写工具:例如vim或nano等。 编写Shell脚本 下面是一个简单的Shell脚本示例,用于备份MySQL数据库: #!/bin/bash # 定义备份路径和文…

    database 2023年5月22日
    00
  • 织梦DEDECMS建立模型、简单分表、索引优化操作方法

    下面是“织梦DEDECMS建立模型、简单分表、索引优化操作方法”的完整攻略: 建立模型 在织梦CMS中,模型是用来定义文章的属性、字段、分类等信息的。如果需要自定义模型,可以按照以下步骤进行操作: 登录网站管理后台,在左侧菜单中找到“模型管理”,点击进入。 点击“添加新模型”,输入模型名称、模型表名等信息,并设置需要的字段和属性。 完成模型设置后,可以在“模…

    database 2023年5月19日
    00
  • MongoDB使用profile分析慢查询的步骤

    下面是MongoDB使用profile分析慢查询的完整攻略: 1. 开启profile功能 在MongoDB中,可以通过开启profile功能来记录所有的操作信息,包括查询操作。使用profile功能需要在MongoDB启动时指定相应的配置,并在Mongo shell中设置。 如下是MongoDB启动时的配置: mongod –profile=2 # 记录…

    database 2023年5月21日
    00
  • Linux history命令的几个使用小技巧

    当你在使用Linux终端时,历史命令可能是最有用的命令之一。History命令可以帮助你查找并重复执行之前执行过的命令。下面是Linux history命令的几个使用小技巧: 1. 使用‘history’命令来查找历史命令 最基本的用法就是输入history命令来查找历史命令。这将显示当前用户在该终端会话中执行的所有命令,每个命令前有一个数字序列,这表示执行…

    database 2023年5月22日
    00
  • MySQL回滚日志(undo log)的作用和使用详解

    MySQL回滚日志(undo log)的作用和使用详解 什么是MySQL回滚日志(undo log) MySQL回滚日志(undo log)是MySQL的一种日志文件,主要用于在事务回滚时撤销事务所做的更改。它记录了对于事务所做的每一个更改的反向操作,以保证当事务回滚时,能够将数据完全恢复到事务开始前的状态。 MySQL回滚日志(undo log)的使用 M…

    database 2023年5月22日
    00
  • Python连接数据库并批量插入包含日期记录的操作

    下面是Python连接数据库并批量插入包含日期记录的操作的完整攻略: 1. 连接数据库 Python连接数据库需要使用到相应的的库,比如MySQL数据库需要使用pymysql库。下面是一个连接MySQL数据库的样例代码: import pymysql #连接数据库 db = pymysql.connect(host = ‘localhost’, port =…

    database 2023年5月21日
    00
合作推广
合作推广
分享本页
返回顶部