oracle学习记录
发布时间:2020-12-12 16:12:55 所属栏目:百科 来源:网络整理
导读:Oracle数据库备份与还原命令 数据导出: 1 将数据库orcl完全导出,用户名system 密码manager 导出到D:daochu.dmp中 exp system/manager@orcl file=d:daochu.dmp full=y 2 将数据库中system用户与sys用户的表导出 exp system/manager@orcl file=d:daochu.dmp
Oracle数据库备份与还原命令
数据导出: 1 将数据库orcl完全导出,用户名system 密码manager 导出到D:daochu.dmp中 exp system/manager@orcl file=d:daochu.dmp full=y 2 将数据库中system用户与sys用户的表导出 exp system/manager@orcl file=d:daochu.dmp owner=(user) 3 将数据库中的表table1 、table2导出 exp system/manager@orcl file=d:daochu.dmp tables=(table1,table2) 4 将数据库中的表table1中的字段filed1以"00"打头的数据导出 exp system/manager@orcl file=d:daochu.dmp tables=(table1)query=" where filed1 like '00%'" 上面是常用的导出,对于压缩我不太在意,用winzip把dmp文件可以很好的压缩。 不过在上面命令后面 加上 compress=y 就可以了 数据的导入 1 将D:daochu.dmp 中的数据导入 orcl数据库中(imp 用户名/密码@网络服务名 file=xxx.dmp full=y;)。 imp system/manager@orcl file=d:daochu.dmp 上面可能有点问题,因为有的表已经存在,然后它就报错,对该表就不进行导入。 在后面加上 ignore=y 就可以了。 2 将d:daochu.dmp中的表table1 导入 imp system/manager@orcl file=d:daochu.dmp tables=(table1) 基本上上面的导入导出够用了。不少情况我是将表彻底删除,然后导入。 注意: 你要有足够的权限,权限不够它会提示你。 数据库时可以连上的。可以用tnsping orcl 来获得数据库orcl能否连上 使用sqlplus文字工具创建数据库用户 create user user identified by 1234; 给生成的用户赋权限 grant dba to user; ORACLE删除当前用户下所有的表的方法 1、如果有删除用户的权限,则可以: drop user user cascade; 加了cascade就可以把用户连带的数据全部删掉。 加密解密函数 赋权 sys as sysdba 登陆 (只能是这个用户) grant execute on dbms_crypto to user 输入 / 后 按回车 跨用户授权 select 'grant select on a.' || tname || ' to user;' from tab; --说明:在a用户下执行该语句,执行后会生成对所有表的赋权限语句,拷贝出来执行就可以了。 --2、a用户下授权查询所有表给user用户 select 'grant select on '||table_name||' to user;' from user_tables; --3、a用户下授权查询所有序列给b用户 select 'grant delete on ' || sequence_name || ' to user;' from dba_sequences where sequence_owner='A'; --4、a用户下授权查询单个表给b用户 grant select on a.tablename to user; --备注:授权更新、删除的 语法和授权查询类似,只是关键字不通而已。 --如: --1、授权a用户下授权更新单个表给b用户 grant update on a.tablename to user; --2、授权a用户下取消给b用户删除单个表的授权 --revoke delete on a.tablename from b; --3、授权a用户下授权删除单个表给b用户 grant delete on a.tablename to user;(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |