十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
以下供参考:
成都创新互联专业为企业提供玛多网站建设、玛多做网站、玛多网站设计、玛多网站制作等企业网站建设、网页设计与制作、玛多企业网站模板建站服务,10年玛多做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。
1.服务启动不能说明实例已被启动,服务与实例不是同的,在windows下,启动服务的时候,会一起开启实例,是因为注册表中,写明了,进入注册表中,可以看看:hkey_local_machine-software-oracle-home0-ora_服务名_autostart,你把这个改为false,那么服务关了之后,再开启动,实例则不会自动开启,连接时,会提示连接到一个空闲例程。然后再用startup来启动,才可以连接数据库.你可以做下实险。
2.sqlplus只是一个客户端程序,可用来管理数据库,启动这个程序,不等于打开数据库.
3.了解oracle的启动过程很关键,对数据库维护尤其重要,在windows下,服务一定要先开启动,不然的话,在sqlplus下怎么操作基本都没有用。
1启动实例
startup
nomount:读取参数文件,分配sga,启动后台进程。
2安装数据库
startup
mount
实例与数据库对应,数据库仍关闭,依据参数文件中的control_files,读取并打开控制文件.
3.打开数据库
startup
根据控制文件,找到数据文件和日志文件,数据库被打开,此时用户可以操作数据库.
所以基本上是四个状态:shutdown-nomount-mount-open
当然中间,数据库还有一些状态和控制命令:
如:read
only,restrict等方法打开数据库。
如:alter
database
xxx等控制命令改变状态。
使用青蛙/plsql/自带工具连接时没有任何报错直接卡死 在网上找了一些并没有解决 就自己摸索了一会
解决办法
检查Oracle的监听日志文件是否过大或损坏
当时查看时已经4g+了 记事本无法打开 当尝试使用其它方式打开时 提示磁盘文件损坏
扯远了
1.停止Oracle监听服务
2.删除或重命名监听文件名(如果不要可以删除,还是推荐重命名保存原来的),日志路径 oracle\diag\tnslsnr\这里是计算机名\listener\trace
3重启Oracle监听 就可以了
sqlplus "/ as sysdba" 连不上,报ora-01031:insufficient privileges解决方法
注意多个数据库实例时候,set ORACLE_SID='',
1、检查sqlnet.ora(WINDOWS下位于%ORACLE_HOME%NETWORKADMIN目录)是否包含这句:SQLNET.AUTHENTICATION_SERVICES=(NTS),没有的话加上
2、检查登陆windows的用户(administrator或安装oracle时候使用的用户)是不是在包含在ORA_DBA组中,域用户没有连上域服务器时就可能出现这种现象。
3. 要保证 remote_login_passwordfile 参数 = EXCLUSIVE .
4. 看看是否需要使用orapassw生成口令文件 .
一种解决方法案例:
1、检查系统参数:SQL show parameter password
NAME TYPE VALUE------------------------------------ ----------- ------------------------------
remote_login_passwordfile string EXCLUSIVE
2、
select * from v$pwfile_users;
SQL
为空
3、SQL grant sysdba to sys;
grant sysdba to sys
*
ERROR at line 1:
ORA-01994: GRANT failed: password file missing or disabled
4、建立password文件
D:/orapwd file="D:/oracle/product/10g/db_1/database/PWDoratest.ora" password=gp
oswong entries=10
5、
SQL select * from v$pwfile_users;
USERNAME SYSDB SYSOP------------------------------ ----- -----
SYS TRUE TRUE
SYS正常显示出来。
6、重新在远程以SYSDBA登录,可正常使用。
如果口令文件创建的有问题,也是会报如下的错误:
ora-01031:insufficient privileges
口令文件的命名格式应为orapwsid,并且sid是区分大小写的。由于Target Database连接Auxiliary Database时需要验证口令,如果违反了以上规则,将会提示ORA-01031: insufficient privileges。
我在用linux创建duplicate数据库的时候 就是因为口令文件创建的路径和名称不对才遇到这个错误
-----end-------
数据库不能连接一般分两种情况,一种是用户名密码错误,另一种是配置不正确。
一、密码错误:
向数据库管理员索取正确用户名密码即可。
二、配置错误:
设置方法如下:
1、找到$ORACLE_HOME/client_1/network/admin目录下的tnsnames.ora文件,并用文本模式打开。
2、添加以下内容:本地实例名= (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 数据库a href=";tn=44039180_cprfenlei=mv6quAkxTZn0IZRqIHckPjm4nH00T1YvuW-9PHbvuHR3rAf1uAFB0ZwV5Hcvrjm3rH6sPfKWUMw85HfYnjn4nH6sgvPsT6KdThsqpZwYTjCEQLGCpyw9Uz4Bmy-bIi4WUvYETgN-TLwGUv3EnHmLPH63rjRL" target="_blank" class="baidu-highlight"IP地址/a)(PORT = 端口号)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = 服务名) ) )
用如下方法连接。
配置方法如下:
1、找到$ORACLE_HOME/client_1/network/admin目录下的tnsnames.ora文件,并用文本模式打开。
2、添加以下内容:
本地实例名=
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 数据库IP地址)(PORT = 端口号))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = 服务名)
)
)
3、用PL/SQL工具登录即可。
数据库不能连接一般分两种情况,一种是用户名密码错误,另一种是配置不正确。
一、密码错误:
向数据库管理员索取正确用户名密码即可。
二、配置错误:
设置方法如下:
1、找到$ORACLE_HOME/client_1/network/admin目录下的tnsnames.ora文件,并用文本模式打开。
2、添加以下内容:
本地实例名=
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 数据库IP地址)(PORT = 端口号))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = 服务名)
)
)