`
Franciswmf
  • 浏览: 796705 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

oracle数据库 各种问题及解决

 
阅读更多
解决: ORA-01034: ORACLE not available
sqlplus /nolog
conn /as sysdba
select instance_name from v$instance;
如果提示Oracle not available,执行:
startup pfile='E:\oracle\appInstall\admin\orcl\pfile\init.ora.8292018****'

解决:ora-00119和ora-00132
参考https://blog.csdn.net/xb12369/article/details/26720275

\\
=======
tnsnames.ora:
# tnsnames.ora Network Configuration File: H:\app\Administrator\product\11.2.0\dbhome_1\network\admin\tnsnames.ora
# Generated by Oracle configuration tools.
#*****
ORCL1 =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 60.*****)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl.sunny.com)
    )
  )
#*****
ORCL2 =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 10.*****)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl)
    )
  ) 
#*****
ORCL3=
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 10.*****)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl.sunny)
    )
  )



========
listener.ora:
# listener.ora Network Configuration File: H:\app\Administrator\product\11.2.0\dbhome_1\network\admin\listener.ora
# Generated by Oracle configuration tools.

SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = CLRExtProc)
      (ORACLE_HOME = H:\app\Administrator\product\11.2.0\dbhome_1)
      (PROGRAM = extproc)
      (ENVS = "EXTPROC_DLLS=ONLY:H:\app\Administrator\product\11.2.0\dbhome_1\bin\oraclr11.dll")
    )
  )

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 60.*****)(PORT = 1521))
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
    )
  )

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 10.*****)(PORT = 1521))
     (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
    )
  )

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 10.*****)(PORT = 1521))
     (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
    )
  )

ADR_BASE_LISTENER = H:\app\Administrator

===================================================
//2015-03-27熟悉oracle数据库的基本知识,熟悉plsql操作:
//查询当前数据库名:
select name from v$database;               //结果:ORCL
//查询当前数据库实例名:(SID)
//实例名指的是用于响应某个数据库操作的数据库管理系统的名称。它同时也叫SID。
//数据库实例名(instance_name)用于对外部连接。在操作系统中要取得与数据库的联系,必须使用数据库实例名。
//比如我们作开发,要连接数据库,就得连接数据库实例名:
//jdbc:oracle:thin:@localhost:1521:orcl(orcl就为数据库实例名)
//一个数据库可以有多个实例,在作数据库服务集群的时候可以用到。

select instance_name from v$instance;     //结果:orcl,数据库实例名用于对外部连接,要连接数据库,就得连接数据库实例名。
===========================================================================================================
//scott用户访问表emp;
select * from emp;

//dept表
select * from dept;

//salgrade表
select * from salgrade;
===========================================================================================================
//创建完数据库后,并不能立即在数据库中建表,必须先创建该数据库的用户,并且为该用户指定表空间。
//安徽工情
//1.创建表空间"ahdemo"
select instance_name from v$instance;
  create tablespace ahdemo datafile 'H:\app\Administrator\oradata\orcl\ahdemo.dbf' size 500m autoextend on next 100m maxsize 2048m; //表空间最大2g
//查看已经创建好的表空间
select default_tablespace,temporary_tablespace,d.username from dba_users d  where d.username like '%ah%'
 group by d.default_tablespace, d.temporary_tablespace, d.username.
 //查看所有表空间大小
 select tablespace_name,sum(bytes)/1024/1024 from dba_data_files group by tablespace_name;

//2.创建用户"ahuser",并为之分配创建的表空间和临时表空间,并为之授权
create user ahuser identified by "Sunny_123456]" default tablespace ahdemo temporary tablespace temp;
//有了用户,要想使用用户账号管理自己的表空间,还得给它分权限:(ahuser已被授予了connect/resource/dba三种权限)
grant connect to ahuser; 
grant resource to ahuser;
grant dba to ahuser;
//查看数据库用户
select * from dba_users order by created desc;
//=====================================================================================
//操作表
//==========================tb_users===
select *  from tb_users;

//==========================tb_dept===
select *  from tb_dept;


oracle客户端乱码问题解决:
通常我们在导入导出Oracle数据时,会遇到乱码现象,一般是由于oracle字符集不一致造成的,下面将展示如何修改oracle字符集。

[oracle@ORACLE ~]$ 
1、sqlplus窗口下
sqlplus /nolog

SQL> conn /as sysdba;

SQL>select userenv('language') from dual;

SQL>SHUTDOWN IMMEDIATE

SQL>STARTUP MOUNT

SQL>ALTER SYSTEM ENABLE RESTRICTED SESSION;

SQL>ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0;

SQL>ALTER SYSTEM SET AQ_TM_PROCESSES=0;

SQL>ALTER DATABASE OPEN;

SQL>ALTER DATABASE CHARACTER SET INTERNAL_USE ZHS16GBK;


SQL>SHUTDOWN IMMEDIATE;

SQL>STARTUP;

SQL>select userenv('language') from dual;

其中常见的Oracle字符集有ZHS16GBK、AL32UTF8、US7ASCII等等。

2、vi .bash_profile
文件末尾追加:
export NLS_LANG="SIMPLIFIED CHINESE_CHINA.ZHS16GBK"
或者
export NLS_LANG="AMERICAN_AMERICA.ZHS16GBK"

# 使 bash_profile 设置生效

3、source .bash_profile


问:plsql访问远程数据库正常,程序访问时报错ORA-12505(TNS:listener does not currently know of SID given in connect descriptor)
解决:

jdbc:oracle:thin:@10.138.100.100:1521:omdt
修改为
jdbc:oracle:thin:@(description=(address=(protocol=tcp)(port=1521)(host=10.138.100.100))(connect_data=(service_name=omdt)))
如果是在properties文件中,则上述字符串中的“:”改为“\:”转义一下即可。
参考:
https://www.cnblogs.com/cbread/p/5751228.html
分享到:
评论

相关推荐

    JDBC连接Oracle数据库常见问题及解决方法

    "JDBC连接Oracle数据库常见问题及解决方法" 本文将对 JDBC 连接 Oracle 数据库常见问题进行总结和解决方法的介绍。以下是针对不同问题的解决方案: 1. Jbuilder 正确连接 Oracle 数据库需要注意的几个问题 在使用...

    如何连接oracle数据库及故障解决办法

    连接 Oracle 数据库是每个开发者和数据库管理员都需要掌握的基本技能,但是很多人在连接 Oracle 数据库时都会遇到各种问题,本文将详细介绍如何连接 Oracle 数据库及故障解决办法。 首先,在连接 Oracle 数据库之前...

    oracle数据库中文乱码问题解决方案.docx

    Oracle数据库中文乱码问题解决方案 Oracle数据库中文乱码问题是指在Oracle数据库中,中文字符无法正确显示或出现乱码的问题。这种问题通常是由于数据库服务器端和客户端字符编码设置不正确引起的。本文将提供一个...

    Oracle数据库日常运维及应急故障处理手册

    本文档即为Oracle数据库的日常运维及应急故障处理手册,主要内容涵盖了日常运维中的关键操作及故障应对策略。 首先,关于CPU使用率高的问题,通常可以通过操作系统提供的工具(如top、topas、glance等)来查看系统...

    ORACLE数据库中文显示乱码问题的解决

    ORACLE数据库中文显示乱码问题的解决,系统中ORACLE数据库在安装后不能正确显示中文,而是显示为'???'等此类乱码。他人总结分析的内容,可以参考下。

    Oracle数据库升迁时字符集问题的解决.pdf

    Oracle 数据库系统升迁过程中的字符集转换问题是由于各种开发平台(语言)和数据库在处理中文字符时机制不同所导致的。 为了解决 Oracle 数据库升迁过程中的字符集问题,需要掌握 Export 和 Import 命令的使用方法...

    Oracle 数据库多语言入库问题的解决方案

    Oracle 数据库多语言入库问题的解决方案是针对企业在国际化进程中遇到的多国语言信息存储难题,尤其是在使用Oracle数据库时,由于字符集的不兼容性导致非中文语言数据入库时出现乱码。Oracle数据库作为全球广泛使用...

    Oracle数据库的安装问题及其解决方法.pdf

    然而,在安装 Oracle 数据库时,会出现各种问题,影响数据库的正常使用。以下是Oracle 数据库安装问题及其解决方法: 一、重新安装 Oracle 数据库 在重新安装 Oracle 数据库时,需要卸载所有 Oracle 产品,然后...

    Oracle数据库的常见问题及解决方法

    然而,在实际使用过程中,我们可能会遇到各种问题。以下是一些常见的Oracle数据库问题及其解决方法: 1. 导入.dmp文件:Oracle数据库的备份通常是以.dmp格式存储的。要导入这些文件,首先需要创建一个表空间,如`...

    Oracle数据库字符集问题解析.pdf

    "Oracle数据库字符集问题解析" Oracle 数据库字符集问题解析是 Oracle 数据库管理系统中一个非常重要的问题。字符集是创建数据库时设定的,在创建后通常不能更改。因此,字符集的设定是个非常关键的问 题,如果...

    Oracle数据库大作业

    总的来说,这个“Oracle数据库大作业”是一个综合性的学习资源,涵盖了数据库设计理论、实践操作和问题解决,对于想深入了解Oracle数据库在实际项目中应用的学生或者开发者来说,是非常有价值的参考资料。...

    oracle数据库日志查看方法

    本文将详细介绍如何查看Oracle数据库中的各种日志文件,并提供具体的步骤和示例,帮助读者更好地理解和操作。 #### 二、Oracle数据库日志类型 Oracle数据库中有多种类型的日志文件,包括但不限于: 1. **后台进程...

    查看登录oracle数据库用户记录.docx

    此外,查看登录记录也可以帮助数据库管理员诊断和解决数据库性能问题。 使用触发器查看登录 Oracle 数据库用户记录 要查看登录 Oracle 数据库的用户记录,可以使用触发器来实现。触发器是一种特殊的存储过程,它...

    Windows 7环境下Oracle数据库常见问题及解决办法.pdf

    Windows 7环境下Oracle数据库常见问题及解决办法.pdf

    如何连接Oracle数据库及故障解决办法

    ### 如何连接Oracle数据库及故障解决办法 在IT领域中,Oracle数据库因其强大的功能和可靠性而备受企业青睐。本文将详细介绍如何安装、调试并成功连接到Oracle数据库,同时提供一些常见的故障解决办法,帮助读者更好...

    SQL SERVER连接oracle数据库几种方法

    然而,我们可以通过启用 Ad Hoc Distributed Queries 来解决这个问题。下面是一个示例代码: ```sql EXEC sp_configure 'show advanced options', 1 GO RECONFIGURE GO EXEC sp_configure 'Ad Hoc Distributed ...

    oracle数据库乱码问题解决

    ### Oracle数据库乱码问题解析与解决方案 #### 一、Oracle数据库乱码问题概述 在使用Oracle数据库的过程中,可能会遇到字符显示异常的问题,通常被称为“乱码”。这种情况会影响到数据的正确读取与处理,进而影响...

Global site tag (gtag.js) - Google Analytics