navicat 链接oracle时出现的各种问题
1.出现12514错误:
方法:在oracle的安装路径下找到tnsnames.ora文件(我的安装路径为E:\app\sa\product\12.2.0\dbhome_1\network\admin\tnsnames.ora)
在navicat链接时服务名写划红线的,或者把划红线的改成orcl,必须要一致!
2. ORA-28040: 没有匹配的验证协议
方法:在Oracle的安装路径下找到sqlnet.ora文件。(我的安装路径E:\app\sa1\product\12.2.0\dbhome_1\network\admin\sqlnet.ora) 在文件的最后添加SQLNET.ALLOWED_LOGON_VERSION=8就解决了;
3.ORA-12560TNS:协议适配器错误
1.监听服务没有起起来。windows平台个一如下操作:开始---程序---管理工具---服务,打开服务面板,
启动OracleOraDb11g_home1TNSlistener服务。
2.database instance没有起起来。windows平台如下操作:开始---程序---管理工具---服务,打开服务
面板,启动OracleServiceBOOKSALES, BOOKSALES就是你的database SID
4.ORA-01017: invalid username/password; logon denied
打开sqlplus
用户名:SYSTEM
密码:
登录
创建新用户
语法:create user 用户名 identified by 密码;
为刚创建的用户解锁语法:
语法:alter user 用户名 account unlock;(解锁是unlock,锁定是lock)
授予新登陆的用户创建权限
语法:grant create session to 用户名 ;
授予新创建的用户数据库管理员权限:
语法:grant dba to 用户名;
为用户授予其它权限:
指令:GRANT CREATE USER,DROP USER,ALTER USER ,CREATE ANY VIEW , DROP ANYVIEW,EXP_FULL_DATABASE,IMP_FULL_DATABASE, DBA, CONNECT,RESOURCE,CREATE SESSION TO C##kou;
切换到新创建的用户登陆语法:connect 用户名/密码;
指令:connect C##kou/kou;
删除用户语法:drop user 用户名;
指令:drop user C##user;
如果用户拥有数据表,则不能直接删除,要用上关键字cascade:
指令:drop user user01 cascade;