博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ORACLE备份、恢复、常用查询
阅读量:7254 次
发布时间:2019-06-29

本文共 4037 字,大约阅读时间需要 13 分钟。

--第一,启动服务,(如果数据库处于启动状态,那么略过这一步) 打开命令行执行以下语句 net start OracleServiceORCL net start  OracleOraDb10g_home2TNSListener net start OracleOraDb10g_home2iSQL*Plus --以上方式是在windows服务中启动服务,当windows服务不能启动数据库实例的时候,应用以下的语句   set oracle_sid=orcl oradim -startup -sid orcl sqlplus internal/oracle   startup    --第二清理以前还原过的痕迹,如果我们在数据库曾经还原过,我们先来清理一下,痕迹, --删除用户 drop user xxxx cascade;      --删除表空间 drop tablespace xxxx;     --删除数据库文件     e:\xxxxxx.dbf  --第三,接下来,准备工作做好后,我们就可以开始还原了 --创建用户 create user yhhg identified by yhhg default tablespace EAS_D_YHHG temporary tablespace EAS_T_YHHG;   --给予用户权限 grant connect,resource,dba to yhhg; --创建表空间,并指定文件名,和大小 create tablespace EAS_D_YHHG datafile 'E:\oracle11g\oradata\easdb\EAS_D_YHHG.dbf' size 15000m REUSE autoextend on next 500M ;create temporary tablespace EAS_T_YHHG tempfile 'E:\oracle11g\oradata\EAS_T_YHHG.dbf' size 1000m autoextend on next 200m maxsize 2000m extent management local;--开始导入(完全导入),file:dmp文件所在的位置, ignore:因为有的表已经存在,对该表就不进行导入。 --在后面加上 ignore=y 。指定log文件 log=e:\log.txt imp user/pass@orcl full=y file=e:\xxx.dmp ignore=y log=e:\log.txt --当我们不需要完整的还原数据库的时候,我们可以单独地还原某个特定的表 imp user/pass@datbase file=e:\xxx.dmp ignore=y log=e:\log.txt tables=(xxxx) imp user/pass@database file=e:\xxx.dmp ignore=y log=e:\log2.txt tables=(xxxx)  --oracle常用的操作命令 --查看实例名select name from v$databaseselect instance_name from v$instance--查看表空间的属性 select tablespace_name,extent_management,allocation_type from dba_tablespaces --查找一个表的列,及这一列的列名,数据类型 select TABLE_NAME,COLUMN_NAME,DATA_TYPE   from user_tab_columns where TABLE_NAME='xxxx' --查找表空间中的用户表 select * from all_tables where owner='xxx' order by table_name desc --在指定用户下,的表的数量 select count(*) from user_tab_columns    --查看数据库中的表名,表列,所有列 select TABLE_NAME,COLUMN_NAME,DATA_TYPE   from user_tab_columns order by table_name desc  --查看用户ZBFC的所有的表名及表存放的表空间 select table_name,tablespace_name from all_tables where owner='xxxx' order by table_name desc --生成删除表的文本 select 'Drop   table '||table_name||';' from all_tables where owner="ZBFC"; --删除表级联删除 drop table table_name [cascade constraints];--查找表中的列 select TABLE_NAME,COLUMN_NAME,DATA_TYPE   from user_tab_columns where column_name like '%'||'地'||'%' order by table_name desc  --查看数据库的临时空间 select tablespace_name,EXTENT_SIZE,current_users,total_extents,used_extents,MAX_SIZE,free_extents from v$sort_segment; --查看用户的连接状况select username,sid,serial# from v$session--搜出该用户的session的SID,SERIAL码,然后kill掉select sid,serial# from v$session where username='user_name';alter system kill session 'sid,serial';--oracle 查看所有用户及密码select * from dba_users;--Oracle密码过期--查看用户的proifle是哪个,一般是defaultSELECT username,PROFILE FROM dba_users;--查看指定概要文件(如default)的密码有效期设置SELECT * FROM dba_profiles s WHERE s.profile=\'DEFAULT\' AND resource_name=\'PASSWORD_LIFE_TIME\';'--将密码有效期由默认的180天修改成“无限制”ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;--oracle修改用户密码方法--set oracle_sid=数据库名称,输入sqlplus“/ as sysdba”进入oracle后台管理界面--在oracle后台管理界面输入语句查找system用户的密码。--具体命令为输入:Select  username,password from dba_users where username=‘SYSTEM’--数据导出:--1 将数据库TEST完全导出,用户名system 密码manager 导出到D:\daochu.dmp中exp system/manager@TEST file=d:\daochu.dmp full=y--2 将数据库中system用户与sys用户的表导出exp system/manager@TEST file=d:\daochu.dmp owner=(system,sys)--3 将数据库中的表inner_notify、notify_staff_relat导出exp aichannel/aichannel@TESTDB2 file= d:\data\newsmgnt.dmp tables=(inner_notify,notify_staff_relat)--4 将数据库中的表table1中的字段filed1以"00"打头的数据导出exp system/manager@TEST file=d:\daochu.dmp tables=(table1) query=\" where filed1 like '00%'\";--上面是常用的导出,对于压缩,既用winzip把dmp文件可以很好的压缩,也可以在上面命令后面 加上 compress=y 来实现。--数据的导入--1 将D:\daochu.dmp 中的数据导入 TEST数据库中。imp system/manager@TEST file=d:\daochu.dmpimp aichannel/aichannel@HUST full=y file=file= d:\data\newsmgnt.dmp ignore=y--上面可能有点问题,因为有的表已经存在,然后它就报错,对该表就不进行导入,在后面加上 ignore=y 就可以了。--2 将d:\daochu.dmp中的表table1 导入imp system/manager@TEST file=d:\daochu.dmp tables=(table1)--基本上上面的导入导出够用了。不少情况要先是将表彻底删除,然后导入。注意:--操作者要有足够的权限,权限不够它会提示。--数据库时可以连上的。可以用tnsping TEST 来获得数据库TEST能否连上。

转载于:https://www.cnblogs.com/fyq891014/p/5057954.html

你可能感兴趣的文章
Python 3.6 -win64环境安装PIL模块
查看>>
redis事务需要注意的坑------RedisConnectionFailureException
查看>>
SPOJ 4110 Fast Maximum Flow (最大流模板)
查看>>
ECMAScript面向对象(二)——之创建对象方法总结
查看>>
面试题6--利用前序和中序遍历重构二叉树--递归方法
查看>>
Oracle的SQL
查看>>
步步为营:Asp.Net客户端存Cookie服务端取
查看>>
git实践:对比svn
查看>>
1 管理入门
查看>>
C#递归遍历指定目录下的所有文件(包括子目录下的文件)
查看>>
SpringMVC的工作流程
查看>>
JS比较好用的一些方法搜集
查看>>
Codeforces 459E
查看>>
Android数据库--Sqlcipher的使用(二)
查看>>
第三十九课:requestAnimationFrame详解
查看>>
6.10 时间和日期例程
查看>>
Chess
查看>>
React Native导航器之react-navigation使用
查看>>
百度2016笔试题第一题:页面请求失败值
查看>>
实现网站图片瀑布流重点记录
查看>>