ORACLE问题汇总

一、修改密码

命令行输入sqlplus "/ as sysdba"  (不登陆数据库,只启动sqlplus)

SQL>alter user 用户名 identified by 新密码; 
SQL> conn 用户名/新密码; --连接测试

 

二、数据库字符集(AL32UTF8)和客户端字符集(2%)是不同的

https://www.cnblogs.com/haimeifeng/p/3838141.html

1.环境变量里面

NLS_LANG     SIMPLIFIED CHINESE_CHINA.ZHS16GBK    是客户端的值

注册表里面是服务端的值

 

三、64位系统安装PL/SQL DEVELOPER步骤

1.安装  instantclient-basic-win32

2.然后,如果tnsnames.ora文件直接放在C:\OracleInstantClient_11_2下,需要设置环境变量TNS_ADMIN=C:\OracleInstantClient_11_2;
如果在C:\OracleInstantClient_11_2下建立network\admin目录,并且放入tnsnames.ora文件,则可以忽略TNS_ADMIN变量。

3.PL/SQL -> 工具 -> 首选项 -> 主目录和OCI库修改

4.用管理员身份运行plsqldev

四、连接数据库取别名

1、Oracle-OraDb11g_home1->Net Configuration Assistant->本地网络服务名配置->添加->服务名(FD)->TCP->主机名->是,进行测试

2、tnsping FD 测试

五、Windows 不能在本地计算机启动 OracleDBConsoleorcl的问题解决方法

 1、开始-》运行cmd

 

  2、执行 emctl start dbconsole

      输入:C:\Documents and Settings\xcl>emctl start dbconsole
      Environment variable ORACLE_SID not defined. Please define it.
      提示:环境变量 ORACLE_SID 未定义,请定义。既然没有定义,那就定义一下。

    3.设置 ORACLE_SID =ORCL ,其中orcl是oracle实例名
      输入:C:\Documents and Settings\xcl>set oracle_sid=orcl ,即可定义成功。

    4.再次运行emctl start dbconsole,该命令是启动dbconsole服务,再次运行是为了查看运行服务时出现的问题,以方便我们解决问题。
      输入:C:\Documents and Settings\xcl>emctl start dbconsole , 并回车。
      系统提示:OC4J Configuration issue. D:\oracle\product\10.2.0\db_1/oc4j/j2ee/OC4J_DBConsole_Ben-PC_orcl not found.
      提示:无法找到“E:\oracle\product\10.2.0\db_1/oc4j/j2ee/OC4J_DBConsole_Ben-PC_orcl“.注意:Ben-PC是我的机器名,也就是计算机名。既然找不到该目录,那么我们可以添加这样的目录,具体操作如下:在该目录下找到OC4J_DBConsole_XXXXXX_orcl的文件夹(以OC4J_DBConsole开头,以orcl结尾,orcl是你的oracle实例名称),复制一份,将名称修改为上述找不到的目录名称。本次就修改为OC4J_DBConsole_Ben-PC_orcl。

    5.再次执行emctl start dbconsole
      输入:C:\Documents and Settings\xcl>emctl start dbconsole
      系统提示:EM Configuration issue. E:\oracle\product\10.2.0\db_1/china-d9e3f7d07_orcl not found.
      提示:无法找到 “E:\oracle\product\10.2.0\db_1/china-d9e3f7d07_orcl ”跟上面相同,缺什么补什么。复制该目录下的“XXXXXX_orcl”文件夹放在同一目录下,且把名称改成“Ben-PC_orcl”。

    6.再次执行emctl start dbconsole
      输入: C:\Documents and Settings\xcl>emctl start dbconsole
      系统提示:Oracle Enterprise Manager 10g Database Control Release 10.2.0.1.0
                Copyright (c) 1996, 2006 Oracle Corporation. All rights reserved.
                http://localhost:1158/em/
                Starting Oracle Enterprise Manager 10g Database Control ...OracleDBConsoleorcl
                服务正在启动
                ..............................
                OracleDBConsoleorcl 服务已经启动成功

 

安装步骤:https://jingyan.baidu.com/album/363872eccfb9266e4aa16f5d.html?picindex=1

六、报错汇总

1、oracle error 6 initializing sql*plus (设置ORACLE_HOME环境变量)

2、ORA-12514: TNS: no listener 解决方案

https://www.cnblogs.com/chuancheng/p/8458259.html

https://blog.csdn.net/idomyway/article/details/81211810

https://blog.csdn.net/lifen0908/article/details/51714648?utm_source=blogxgwz8

https://blog.csdn.net/h18300103614/article/details/81431780

3、ORACLE 11g 创建数据库时 Enterprise Manager配置失败的解决办法 无法打开OEM的解决办法

https://blog.csdn.net/zyf19930610/article/details/51262253

七、拷贝数据库

1、创建表空间

2、创建用户

3、将表空间分配个用户

4、备份表结构

5、备份表数据

使用PLSQL:https://blog.csdn.net/xudasong123/article/details/79819578

创建表空间、用户脚本:https://www.cnblogs.com/qmfsun/p/3817344.html

https://zhidao.baidu.com/question/353184218.html

查看用户权限:https://www.cnblogs.com/zhangkaimin/p/7919327.html

表空间与用户的关系 表空间和数据文件的关系 schema

  1. 一个表空间有多个数据文件,一个数据文件只能属于一个表空间。
  2. 一个数据库可以有多个表空间,每一个库都有一个system表空间。
  3. 一个用户可以使用一个或多个表空间,一个表空间也可以供多个用户使用。
  4. 用户和表空间没有隶属关系,表空是一个用来管理数据存储逻辑概念,表空间只是和数据文件发生关系,数据文件是物理的,一个表空间可以包含多个数据文件,而一个数据文件只能隶属一个表空间。
  5. 用户在创建表的时候没有指定表空间,使用该用户的默认表空间(创建用户的时候需要指定)。

方案(schema)又叫模式,是比表空间小一级的逻辑概念,它也是一个逻辑容器。多个用户可能共用一个表空间,那如何区分开每一个用户?那么在表空间中对每个用户都有一个对应的方案,用于保存单个用户的信息。

Schema为数据库对象的集合,为了区分各个集合,我们需要给这个集合起个名字。schema里面包含了各种对象如tables, views, sequences, stored procedures, synonyms, indexes, clusters, and database links。

一个用户一般对应一个schema,该用户的schema名等于用户名,并作为该用户缺省schema。

Oracle数据库中不能新创建一个schema,要想创建一个schema,只能通过创建一个用户的方法解决,在创建一个用户的同时为这个用户创建一个与用户名同名的schem并作为该用户的缺省shcema。

一个用户有一个缺省的schema,其schema名就等于用户名,当然一个用户还可以使用其他的schema。如果我们访问一个表时,没有指明该表属于哪一个schema中的,系统就会自动给我们在表上加上缺省的sheman名。比如我们在访问数据库时,访问scott用户下的emp表,通过select * from emp; 其实,这sql语句的完整写法为select * from scott.emp。在数据库中一个对象的完整名称为schema.object,而不属user.object。类似如果我们在创建对象时不指定该对象的schema,在该对象的schema为用户的缺省schema,但是在默认的表空间。

八、

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值