Oracle 遇到的问题:dos命令下imp导入数据时出错
赋予用户dba权限:很多情况下会遇到没有权限需要输入用户名及密码才能导入
--已知被赋予权限的用户名为:batch
--第一步 登陆
sqlplus /nolog
sql>conn /as sysdba;
--第二步 查询所有用户名,可以找到batch用户
sql>select username from dba_users;
--第三步 赋予权限
sql>grant dba to batch;---------------我是在pl/sql中执行授权的
--另外解除权限是:
sql>revoke dba from batch;
--解释以上:
sqlplus /nolog
--运行sqlplus命令,进入sqlplus环境,nolog参数表示不登录。这种登陆方式比较安全;
sql>conn /as sysdba
--以系统管理员(sysdba)的身份连接数据库;如果需要对数据库进行管理操作,那么需要以这种方式登录数据库,或者connect sys@service_name as sysdba,其中你配置的客户tnsname服务名
--操作系统身份认证登陆。oracle在登录时,有三种身份认证方式:操作系统身份认证、密码文件认证、数据库认证。而conn /as sysdba是属于操作系统认证。 为什么这样说呢?你当前电脑开机时登录的用户,也就是进入操作系统的用户,例如是gooooal,它在你电脑的ora_dba组中。
可以在“我的电脑”单击右键,找到“管理”,选择“本地用户和组”,发现有一个组叫“ora_dba”,双击它,看到成员列表中有“gooooal”。
也就是在conn /as sysdba,oracle会进行操作系统验证,发现你当前登录的用户就属于ora_dba组,因此才可以登录成功。
sql>select username from dba_users;
--查询oracle中所有用户名
sql>grant dba to batch;
--给用户赋予dba权限,dba是一个角色,该角色具有数据库所有的权限
sql>revoke dba from username;
--解除权限
-------------------------------------------------------------------------------
oracle数据库中涉及到用户权限的三个表,dba_users,all_users,user_users有什么区别?
答:DBA_*意为DBA拥有的或可以访问的所有的对象。就是是查全库所有的;
ALL_*意为某一用户拥有的或可以访问的所有的对象。就是当前用户可以看到的;
USER_*意为某一用户所拥有的所有的对象。就是当前用户的。
"GRANT SELECT ON "APP_PAY_BUDGET" TO "SFZC""
IMP-00003: 遇到 ORACLE 错误 1917
ORA-01917: 用户或角色 'SFZC' 不存在
.查看所有用户:
select * from dba_users;
select * from all_users;
select * from user_users; .查看用户或角色系统权限(直接赋值给用户或角色的系统权限):
select * from dba_sys_privs;
select * from user_sys_privs; .查看角色(只能查看登陆用户拥有的角色)所包含的权限
sql>select * from role_sys_privs; .查看用户对象权限:
select * from dba_tab_privs;
select * from all_tab_privs;
select * from user_tab_privs; .查看所有角色:
select * from dba_roles; .查看用户或角色所拥有的角色:
select * from dba_role_privs;
select * from user_role_privs; .查看哪些用户有sysdba或sysoper系统权限(查询时需要相应权限)
select * from V$PWFILE_USERS 比如我要查看用户 wzsb的拥有的权限:
SQL> select * from dba_sys_privs where grantee='WZSB'; GRANTEE PRIVILEGE ADMIN_OPTION
------------------------------ ---------------------------------------- ------------
WZSB CREATE TRIGGER NO
WZSB UNLIMITED TABLESPACE NO 比如我要查看用户 wzsb的拥有的角色:
SQL> select * from dba_role_privs where grantee='WZSB'; GRANTEE GRANTED_ROLE ADMIN_OPTION DEFAULT_ROLE
------------------------------ ------------------------------ ------------ ------------
WZSB DBA NO YES 查看一个用户所有的权限及角色
select privilege from dba_sys_privs where grantee='WZSB'
union
select privilege from dba_sys_privs where grantee in
(select granted_role from dba_role_privs where grantee='WZSB' );
--红色注释是我用到的,别的都是网上查到的参考资料,仅供参考
Oracle 遇到的问题:dos命令下imp导入数据时出错的更多相关文章
- Oracle在dos命令下导出导入
DOS下运行的命令,也可以加参数在SQL/PLUS环境下运行简单例子实现 单表备份(前提库的结构是一样的)导出:开始钮->运行->输入CMD->进入DOS界面EXP 用户名/密码@连 ...
- Oracle导入数据时出错ORA-39143:转储文件可能是原始的转储文件
dmp文件是使用exp命令导出的,所以使用impdp导入则会报错误. 正确的导入语句为:imp sde/salis@orcl file='E:\sde.dmp' full=y;
- 安装Oracle之后在DOS命令下不能使用sqlplus命令启动Oracle?
就像完成安装JDK后需要给系统配置环境变量JAVA_HOME和PATH,以便让系统认识在JDK里面的Javac命令.同样的,安装Oracle也需要这么一个过程.在正常情况下安装Oracle时系统安装程 ...
- Java在DOS命令下的运行及其API文档制作过程
该文档主要描述java程序在DOS命令下的运行,以及一些常用的命令 常用DOS命令: d: 回车 盘符切换 dir(directory):列出当前目录下的文件以及文件夹 md (make direct ...
- DOS命令下输入:java Hello 出现以下几种结果可能的原因:
DOS命令下输入:java Hello 出现以下结果:Bad command or the file name 没有这个命令或文件名 原因可能是没有成功安装jdk或者没有配置好jdk 的环境变量,或者 ...
- Dos命令下目录操作
Dos命令下目录操作 1.cd 操作 显示当前目录名或改变当前目录 cd [盘符][路径] 进入指定盘符下的目录 cd [..] ...
- dos命令下安装pip报错 不是内部命令
在dos命令下: pip install requests 遇到这种情况一般是Python的环境变量没有设置好 解决方案一:设置环境变量 C:\Python\scripts 如图 是否有pytho ...
- oracle中imp导入数据中文乱码问题(转)
(转自 http://blog.chinaunix.net/uid-186064-id-2823338.html) oracle中imp导入数据中文乱码问题 用imp命令向oracle中导入数据后, ...
- Oracle错误——SP2-0734: 未知的命令开头 "imp C##sin..." - 忽略了剩余的行。
错误 在windows的DOS窗口下使用命令导入Oracle数据. 原因 进入sqlplus里是不能执行imp的(sqlplus不认识imp),imp 是个工具,应该在cmd的dos命令提示符下执行.
随机推荐
- spring中使用i18n(国际化)
简单了解i18n i18n(其来源是英文单词internationalization的首末字符i和n,18为中间的字符数)是“国际化”的简称.在资讯领域,国际化(i18n)指让产品(出版物,软件,硬件 ...
- Getting aCC Error :name followed by "::" must be a class or namespace name"
Getting aCC Error :name followed by "::" must be a class or namespace name" 原始是这样子的: ...
- python——文件处理
1.文件处理 f = open(file="file01.txt", mode="r", encoding="utf-8") #python ...
- Python测量时间,用time.time还是time.clock
在计算机领域有多种时间.第一种称作CPU时间或执行时间,用于测量在执行一个程序时CPU所花费的时间.第二种称作挂钟时间,测量执行一个程序时的总时间.挂钟时间也被称作流逝时间或运行时间.与CPU时间相比 ...
- checkboxlist如何配置数据源?
在做项目中,通常checkboxlist中的checkitems不是固定的,需要绑定可变的数据源,把数据添加到list集合中,代码如下 DataSet myData = new DataSet(); ...
- sudo 密码超时时间
Centos 没有默认超时时间,所以用一次sudo就需要输入密码. vi /etc/sudoers 添加下面的内容,2表示分钟数(看自己需求更改). Defaults timestamp_timeou ...
- tomcat日志切割脚本
tomcat日志每俩小时切割的脚本如下(这是用定时任务来完成的,此方法无需重启tomcat): time=$(date +%H) end_time=`` a=$end_time BF_TIME=$(- ...
- nuxt generate静态化后回退问题
之前线上的项目是nuxt build后的项目发布在服务器上,pm2来管理node的进程,nuxt还是运行在node的环境里. 这个方案用了半年左右,访问速度什么的确实很快,pm2管理下的node在wi ...
- 【转载】java 客户端链接不上redis解决方案 (jedis)
本文出自:http://blog.csdn.net/lulidaitian/article/details/51946169 出现问题描述: 1.Could not get a resource fr ...
- 【菜鸟笔记】记一次django无法正常在ie和edge浏览器渲染html页面
如图所示,django无法渲染html显示成下载文件了 一步一步的从render ==>HttpResponse ==>HttpResponseBase 找到 即django文件夹下的ht ...