Oracle数据库备份与恢复exp/imp命令
exp导出工具将数据库中数据备份压缩成一个二进制系统文件,可以在不同OS间迁移
可以导出用户所有对象以及对象中的数据;导出用户所有表或者指定的表;导出数据库中所有对象。
imp所执行的步骤:
(1) create table --新建表
(2) insert data --插入数据
(3) create index --生成索引
(4) create triggers,constraints --新建触发器,各类约束
注意:只有拥有IMP_FULL_DATABASE和DBA权限的用户才能做整个数据库导入
使用导入工具imp时可能出现的问题 :
(1) 数据库对象已经存在
一般情况, 导入数据前应该彻底删除目标数据下的表, 序列, 函数/过程,触发器等;
数据库对象已经存在, 按缺省的imp参数, 则会导入失败
如果用了参数ignore=y, 会把exp文件内的数据内容导入
如果表有唯一关键字的约束条件, 不合条件将不被导入
如果表没有唯一关键字的约束条件, 将引起记录重复
(2) 数据库对象有主外键约束
不符合主外键约束时, 数据会导入失败
解决办法: 先导入主表, 再导入依存表
disable目标导入对象的主外键约束, 导入数据后, 再enable它们
(3) 权限不够
如果要把A用户的数据导入B用户下, A用户需要有imp_full_database权限
(4) 导入大表( 大于80M ) 时, 存储分配失败
默认的EXP时, compress = Y, 也就是把所有的数据压缩在一个数据块上
导入时, 如果不存在连续一个大数据块, 则会导入失败
导出80M以上的大表时, 记得compress= N, 则不会引起这种错误
(5) imp和exp使用的字符集不同
如果字符集不同, 导入会失败, 可以注册表里NLS_LANG相关信息
导入完成后再改回来
--查询当前系统所使用的字符集
select * from v$nls_parameters where parameter='NLS_CHARACTERSET';
--查询所有有关字符集的参数
select * from v$nls_parameters;
修改系统的字符集:
在oracle8之前,可以用直接修改数据字典表props$ 来改变数据库的字符集,但oracle8之后,至少有三张系统表记录了数据库字符集的信息,只改props$表并不完全,可能引起严重的后果。正确的修改方法如下
若此时数据库服务器已启动,则先执行SHUTDOWN IMMEDIATE命令关闭数据库服务器,然后执行以下命令:
SQL>STARTUP MOUNT;
SQL>ALTER SYSTEM ENABLE RESTRICTED SESSION;
SQL>ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0;
SQL>ALTER SYSTEM SET AQ_TM_PROCESSES=0;
SQL>ALTER DATABASE OPEN;
SQL>ALTER DATABASE CHARACTER SET INTERNAL_USE ZHS16GBK; //跳过超子集检测 AL32UTF8;
SQL>ALTER DATABASE national CHARACTER SET INTERNAL ZHS16GBK;AL32UTF8;
流程为:关库,启动数据库到mount状态,进入数据库维护模式,此时只有system和sys用户可登录数据库。关闭DBMS调度程序和DBMS调度任务,关闭自动任务启动,跳过字符超子集检查,设定系统字符集,关库,重新启动数据库。
(6) imp和exp版本不能往上兼容
imp可以成功导入低版本exp生成的文件, 不能导入高版本exp生成的文件
根据情况我们可以用
exp和imp与数据泵expdp和impdp的区别:
1、exp和imp是客户端工具程序,它们既可以在客户端使用,也可以在服务端使用。exp在客户端使用,要受到网速的影响,因此会比较慢。
2、expdp和impdp是服务端的工具程序,他们只能在Oracle服务端使用,不能在客户端使用。
3、imp只适用于exp导出的文件,不适用于expdp导出文件;impdp只适用于expdp导出的文件,而不适用于exp导出文件。
4、对于10g以上的服务器,使用exp通常不能导出0行数据的空表,而此时必须使用expdp导出。
5、数据泵expdp和impdp导出可以使用parallel属性指定并行任务导出,parallel=2就是并行2个任务导出。当然,这个并不是越多越好,需要考虑服务器的性能和cpu的个数等等因素。还可以通过导出多个文件的方式提高性能,即使用dumpfile=expdp.dp1,expdp.dp2这种方式提高性能。需要用户根据实际情况设置
6、exp导出时读取的是sql,通过加载sql查询结果到缓存,然后在写进目标文件,而expdp是直接读取的数据块,直接从数据块写进目标文件。
相关文章:
Oracle数据库备份与恢复exp/imp命令
exp导出工具将数据库中数据备份压缩成一个二进制系统文件,可以在不同OS间迁移 可以导出用户所有对象以及对象中的数据;导出用户所有表或者指定的表;导出数据库中所有对象。 imp所执行的步骤: (1) create table --新建表 (2) inser…...
何为心理承受能力?如何提高心理承受能力?
心理承受能力,也可以理解为人的抗压能力,指的是承受压力,承受逆境的能力。人的一生其实就是在不断的解决问题,见招拆招,遇到问题解决问题,在我们不断学习和锻炼的过程中,提高了我们解决问题的效…...
Seata学习
Seata Seata 是一款开源的分布式事务解决方案,致力于在微服务架构下提供高性能和简单易用的分布式事务服务。 官网地址:https://seata.io/zh-cn/index.html 为什么会产生分布式事务? 示例:用户下单后需要创建订单,同时…...
探索数据结构世界之排序篇章(超级详细,你想看的都有)
-文章开头必看 1.!!!本文排序默认都是排升序 2.排序是否稳定值指指排完序之后相同数的相对位置是否改变 3.代码相关解释我都写在注释中了,方便对照着看 1.插入排序1.1直接插入排序1.2希尔排序1.2.1单趟1.2.2多趟基础版——排完一…...
偶数科技发布实时湖仓数据平台Skylab 5.3版本
近日, 偶数发布了最新的实时湖仓数据平台 Skylab 5.3 版本。Skylab包含七大产品,分别为云原生分布式数据库 OushuDB、数据分析与应用平台 Kepler、数据资产管理平台 Orbit、自动化机器学习平台 LittleBoy、数据工厂 Wasp、数据开发与调度平台 Flow、系统…...
vant组件是使用?
首先 在vue项目中使用的时候 要先下载组件 使用npm安装 # Vue 3 项目,安装最新版 Vant npm i vant# Vue 2 项目,安装 Vant 2 npm i vantlatest-v2 使用yarn安装或pnpm # 通过 yarn 安装 yarn add vant# 通过 pnpm 安装 pnpm add vant 在框架中引入即…...
CSP-S 2023 游记
开题,首先先把除了第三题的所有题看了一遍。(由于第三题太长,先放着后面再看) 决定顺序先把一二题做了。 看第一题,小小思考了一手,发现暴力可做,于是飞速码完,小小对拍一下&#…...
关于Git的入门教程(附GitHub和Gitee的使用方法)
一. Git 概述 Git是一个免费的、开源的分布式版本控制系统,可以快速高效地处理从小型到大型的各种项目。Git易于学习、占地面积小、性能极快。它具有廉价的本地库,方便的暂存区域和多个工作流分支等特性。其性能优于Subversion、CVS、Perforce和ClearCas…...
C# winform如何实现数据的保存和读取
在c#winform中我们在写程序时,经常需要进行数据处理,那么数据如何保存和读取(下面我们通过序列化和反序列化的方式来实现) 第一步: 我们建立一个winform窗体 第二步: 构建一个外部实体类(Student类) 第…...
【Java基础面试四十一】、说一说你对static关键字的理解
文章底部有个人公众号:热爱技术的小郑。主要分享开发知识、学习资料、毕业设计指导等。有兴趣的可以关注一下。为何分享? 踩过的坑没必要让别人在再踩,自己复盘也能加深记忆。利己利人、所谓双赢。 面试官:说一说你对static关键字…...
istio介绍(二)
5. kubesphere istio使用 5.1 整体架构 ks-account 提供用户、权限管理相关的 APIks-apiserver 整个集群管理的 API 接口和集群内部各个模块之间通信的枢纽,以及集群安全控制ks-apigateway 负责处理服务请求和处理 API 调用过程中的所有任务ks-console 提供 KubeSp…...
中文编程开发语言工具构件说明:屏幕截取构件的编程操作
屏幕截取 用于截取指定区域的图像。 图 标: 构件类型:不可视 重要属性 l 截取类型 枚举型,设置在截取屏幕时的截取类型。包括:全屏幕、指定区域、活动窗口三种。当全屏幕截取时相当于执行了硬拷屏(PrintScre…...
selenium多窗口、多iframe切换、alert、3种等待
1、多标签/多窗口之间的切换 场景: 在页面操作过程中有时候点击某个链接会弹出新的窗口,这时就需要切换到新打开的窗口上进行操作。这种情况下,需要识别多标签或窗口的情况。 操作方法: switch_to.window()方法:切换…...
物联网AI MicroPython传感器学习 之 RTC时钟模块
学物联网,来万物简单IoT物联网!! 一、产品简介 DS1302 是DALLAS 公司推出的涓流充电时钟芯片,内含有一个实时时钟/日历和31字节静态RAM,实时时钟/日历电路提供秒、分、时、日、周、月、年的信息,每月的天数…...
Mac安装nginx(Homebrew)
查看需要安装 nginx 的信息 brew info nginxDocroot 默认为 /usr/local/var/www 在 /opt/homebrew/etc/nginx/nginx.conf 配置文件中默认端口被配置为8080,从而使 nginx 运行时不需要加 sudo nginx将在 /opt/homebrew//etc/nginx/servers/ 目录中加载所有文件 …...
租用服务器后需要注意什么呢
租用服务器后需要注意什么呢 1、从IDC服务商中接收到服务器时,需要对服务器的各项性能进行测试确认,并做好记录以便对服务器的性能做到心中有数。 2、在服务器租用交接时,要了解服务器的安全设置情况,对服务器安全技术方面不了解…...
pip 时报错 no such option: --bulid-dir 的解决办法
Pycharm 安装第三方库报错及解决方案——no such option: --build-dir Pycharm 安装第三方库报错及解决方案——no such option: --build-dir 最近在学习路径规划相关内容,在运行GitHub上下载例程时缺少“plotly”库,根据网上查到的安装步骤操作&#x…...
[Spring] SpringBoot2 简介(一)—— 基础配置
目录 一、SpringBoot 简介 1、Spring 的缺点 2、SpringBoot 功能 二、SpringBoot 入门案例 1、实现步骤 2、访问服务器 3、入门小结 4、Idea 快速构建 SpringBoot 工程 5、起步依赖无需版本号 6、主启动类的在项目中的位置(*重要*) 三、Sprin…...
【软考】计算机指令系统寻址的几种方式及其速度的比较
速度比较:立即>寄存器>直接> 间接 1. 立即寻址: 直接在指令中给出操作数 2. 寄存器寻址(Register Addressing): 寄存器寻址是指操作数直接存储在寄存器中。指令中的地址字段指定要使用的寄存器编号&#…...
golang笔记17--编译调试go源码
golang笔记17--编译调试go源码 前置条件编译源码在 fmt 包中加自定义函数说明 当前go语言越来越流行了,各大厂商都有加大go工程师的需求,作为go语言的学习者,我们除了要了解如何使用go语言外,也有必要了解一下如何编译、调试go源码…...
2026 年 5 大编程网站深度对比:零基础到就业,谁才是自学首选?
引言:自学编程的崛起与平台的抉择 在数字浪潮的推动下,编程自学已成为许多人迈向IT行业的首选路径。据《2025年在线教育趋势报告》显示,全球有超过60%的编程学习者倾向于通过线上平台进行自学。然而,从“零基础”到“成功就业”的…...
QobuzDownloaderX-MOD:如何轻松下载Qobuz高品质音乐到本地
QobuzDownloaderX-MOD:如何轻松下载Qobuz高品质音乐到本地 【免费下载链接】QobuzDownloaderX-MOD Downloads streams directly from Qobuz. Experimental refactoring of QobuzDownloaderX by AiiR 项目地址: https://gitcode.com/gh_mirrors/qo/QobuzDownloader…...
深入探索 DeepSeek
一、 引言 背景: 人工智能浪潮与大语言模型 (LLM) 的兴起。 DeepSeek 的定位: 简介 DeepSeek 是什么(例如:由哪家公司或团队开发,定位为通用或特定领域的 AI 模型/平台)。 核心目标与愿景: DeepSeek 旨在解决什么问题?其追求的技术目标是什么? 文章目的: 本文旨在深入…...
深度技术解析:Zotero-OCR插件的高阶配置与性能优化
深度技术解析:Zotero-OCR插件的高阶配置与性能优化 【免费下载链接】zotero-ocr Zotero Plugin for OCR 项目地址: https://gitcode.com/gh_mirrors/zo/zotero-ocr Zotero-OCR作为文献管理工具Zotero的核心OCR扩展,通过集成Tesseract引擎为PDF文献…...
如何理解A醇价格背后的检测与批次管理逻辑
如何理解A醇价格背后的检测与批次管理逻辑在化妆品原料采购领域,A醇(视黄醇)作为一种高活性功效成分,其价格差异往往令采购与研发人员困惑——同标称纯度的A醇,不同供应商报价可能相差悬殊。价格差异的根源,…...
英雄联盟全能工具箱:3分钟上手,告别繁琐操作的游戏神器
英雄联盟全能工具箱:3分钟上手,告别繁琐操作的游戏神器 【免费下载链接】League-Toolkit An all-in-one toolkit for LeagueClient. Gathering power 🚀. 项目地址: https://gitcode.com/gh_mirrors/le/League-Toolkit 还在为错过对局…...
智契通项目开发周记(第二周):数据库建模与代码生成器集成
一、 本周工作概述如果说第一周是绘制蓝图,那么第二周就是正式“打桩”。本周的核心任务是从架构设计走向具体的数据模型落地。基于《智契通项目总体架构设计》文档中的核心能力,我重点完成了以下工作:数据库建模:根据业务需求&am…...
终极戴尔G15散热控制指南:开源替代方案TCC-G15完全解析
终极戴尔G15散热控制指南:开源替代方案TCC-G15完全解析 【免费下载链接】tcc-g15 Thermal Control Center for Dell G15 - open source alternative to AWCC 项目地址: https://gitcode.com/gh_mirrors/tc/tcc-g15 你是否正在为戴尔G15笔记本的过热问题而烦恼…...
告别QML资源路径噩梦:手把手教你用Prefix和别名管理图片资源(附避坑指南)
告别QML资源路径噩梦:手把手教你用Prefix和别名管理图片资源(附避坑指南) 在Qt Quick的UI开发中,资源路径管理往往是开发者最容易忽视却又最常踩坑的环节。想象一下这样的场景:你的QML文件中散落着各种source: "…...
从Excel思维到PySpark:用`withColumn`像写公式一样处理DataFrame(新手避坑指南)
从Excel思维到PySpark:用withColumn像写公式一样处理DataFrame(新手避坑指南) 如果你习惯用Excel或Pandas处理数据,第一次接触PySpark时可能会被它的分布式特性吓到。但别担心,withColumn这个函数能让你用熟悉的"…...
