- 释放oracle undo表空间,undo表空间释放
IBEANI
释放oracleundo表空间
一.概述:使用IMPDP工具导入大表(166G)数据时,报undo表空间不能扩展,导入工作失败.手工停止了impdp后,undo表空间存在无法自动释放的故障.本文主要描述如何通过重建undo表空间来手工释放undo表空间.数据库环境的描述:OS:AIX6.1+HACMP5.3DB:ORACLE10.2.0.5RAC二.问题的描述impdp导入数据时,报ora-30036错误$impdpuser/p
- oracle exp/imp命令使用parfile实现参数文件调用
罗汉爷
#OracleDBA相关expparfile
优先使用数据泵(expdp/impdp)方式,更高效,问题少。关于exp/imp工具的使用请参考我的另一篇文章:https://blog.csdn.net/IndexMan/article/details/7829748说明:假如你只想导出某用户下部分表结构和数据,而表有成百上千个,直接在命令行中写肯定费劲。我们可以将具体表名以及其他相关命令都写进一个参数文件中,例如:abc.par在执行exp时
- linux下expdp定时备份_Linux 自动备份 Oracle 数据库 Shell 脚本
weixin_39916355
linux下expdp定时备份
我们之前也介绍过,如何在Linux备份MySQL。作为一个后端开发人员,备份数据库是一个良好的习惯,虽然说数据库损坏或者数据丢失的概率很低,但是你不得不防,要不2019-9-1110:23:4301.3k我是备份在本机,所以我采用Oracle自带的expdp功能进行备份;如需要异地的,则需要针对以下脚本进行加工,这里不阐述准备工作本机具有Oracle的expdp导出功能开始工作创建sh脚本,命名为
- Oracle数据库备份,导出dmp文件
hongyu#ding
好记性不如记事本数据库oracledmp备份oracle导出
1、指定dmp备份文件目录并授权。sqlplus/assysdbaCREATEORREPLACEDIRECTORYdmpAS'/u01/back_dmp';GRANTREAD,WRITEONDIRECTORYdmpTOORACLE_USER;exit2、生成dmp备份文件。expdpORACLE_USER/ORACLE_PASSWORDdirectory=dmpdumpfile=mes_user.
- 一个升级迁移11g到19c使用xtts遇到的小问题
好记忆不如烂笔头abc
oracle
oracle11.2.0.4到19.211.系统权限和对象权限,由于大小写对象名问题,如果使用expdp方式迁移可能存在丢失迁移后需比对对象、权限,避免遗漏setpagesize0setlong90000setfeedbackoffsetechooffspoolddl.sqlselectdbms_metadata.get_ddl('TABLE','TAB_NAME','SCOTT')fromdua
- linux 下expdp未找到命令
陌上的红蔷薇
1、查询安装oracle服务端的用户ps-ef|grepora查询出该用户后,直接su-用户后执行命令2、如果还是不成功,则查看环境变量是否有问题,两种解决办法(1)进入安装oracle服务端的用户,比如oraclesu-oraclesource~/.bash_profile----.bash_profile是一个隐藏的配置文件,主要是用来配置bashshell的,该命令让这个配置文件在修改后立即
- 常用命令-
小小橘子皮
笔记命令
Linux服务器命令scp-P1122expdp_aram_prod230903_*
[email protected]:/oracle/app/oracle/move_data//跨服务器传输chown-Roracle:oinstall/app/move_data//更改所属组date-s'2022-11-1118:58:30'//修改服务器时间top//CPU使用率df-h//磁盘使用情况df-ihl
- oracle数据泵
Quick_5413
exp、imp是大家经常用到的数据导出、导入工具,而且可以在客户端执行,非常方便。从10g开始,oracle推出了服务端的数据导出、导入工具:expdp、impdp,同时对exp、imp的功能进行了弱化,因此10g以上版本最好使用数据泵。一、创建逻辑目录,赋予用户对目录的操作权限createdirectorydpdataas'/u01/dpdata'grantread,writeondirecto
- Oracle数据库备份与REMAP_SCHEMA
lang20150928
oracleoracle数据库
#备份oracle数据库数据其中xir_trdj为用户xpar为密码schemas定义数据库实例dumpfile定义备份的文件名称expdpxir_trdj/
[email protected]/orclschemas=xir_mdjdumpfile=20200311_131012_XIR_MDJ.DMPexpdpxir_trdj/
[email protected]/orclschemas=xir_
- Linux7.6下安装Oracle 19c容器数据库(CDB,PDB) -内容超详细,轻松上手
蚁库
Oracle实战学习数据库oraclejava
哈喽!大家好,本专栏主要发表oracle实战的文章,文章主要包括:Oracle11g/12c/19c各类型数据库的安装、imp/impdp;exp/expdp,rman,dg,ogg,性能优化等内容的学习。***如果需要观看配套视频的小伙伴们,请关注公众号【小萌资源分享】***✨✨✨感谢各位大可爱小可爱!✨✨✨文章目录</
- oracle11g数据导出和导入
长夜漫漫长
linux运维服务器
利用数据泵导出导入数据命令:EXPDP/IMPDP第一:创建directory对象,可以在命令行,也可以在客户端上运行CREATEDIRECTORYDUMP_DIRAS'/home/dump'原因:导入导出工具只能将转储文件存放在DIRECTORY对象对应的os目录中,所以必须建立directroy对象,并且需要授权(读写)第二:授权GRANTread,writeondirectorydump_d
- oracle导入导出
林间6
部署oracle数据库
oracle导入导出1、查询当前创建的所有dmp导出目录select*fromdba_directories;2、创建expdp导出目录(可不创建,选择已有目录,创建后使用上一命令检查是否创建成功,如果未成功,导出会报错)createorreplacedirectorydmpas'D:/app/dmp';3、创建之后需要授权grantread,writeondirectorydmptoPUser;
- Oracle数据泵导出导入
yjb.gz
oracleoracle数据库
分享一篇数据泵参数详细说明:数据泵expdp/impdp导入导出详细说明-平复心态-博客园(cnblogs.com)1数据库目录准备创建逻辑目录以DBA角色创建目录createdirectoryDUMPDIRas'/dumpdir';授权目录给指定用户授予目录操作权限(导入/导出操作时使用的用户)grantread,writeondirectorydpdatatouser;2数据导出导入导出数据e
- 数据泵
个人精进成长营
一:数据泵提供的主要特性:1.支持并行处理导入、导出任务2.支持暂停和重启动导入、导出任务3.支持通过DatabaseLink的方式导出或导入远端数据库中的对象4.支持在导入时通过Remap_schema、Remap_tablespace,重定向用户和表空间5.EXPDP和IMPDP是服务端的工具程序,他们只能在ORACLE服务端使用,不能在客户端使用。6.IMP只适用于EXP导出的文件,不适用于
- expdp错误,ORA-01555: 快照过旧
huryer
oracleexpdpora-01555
/*2020-11-0309:44:56错误信息:expdp备份时提示如下错误ORA-31693:表数据对象"TEST"."TEST_DOC"无法加载/卸载并且被跳过,错误如下:ORA-02354:导出/导入数据时出错ORA-01555:快照过旧:回退段号12(名称为"_SYSSMU12_4103953449$")过小*/--解决办法:--1、查看undo表空间利用率--检查是否利用率过高,可以适
- expdp时报错ORA-31693&ORA-02354&ORA-01555
福娃筱欢
expdp时报错
问题描述expdp进行导出时提示如下报错:[root@topecpsbackup]#sjtbk/sjtbk@sjtbkdirectory=oracledumpfile=sjtbk.dmplogfile=sjtbk.log....ORA-31693:表数据对象"SJTBK"."INC_KETTLE_ETL_HIST"无法加载/卸载并且被跳过,错误如下:ORA-02354:导出/导入数据时出错ORA-
- Windows环境下的Oracle数据库备份策略
Almeche
Oracle日常管理
最近公司一个新项目上线,服务器有限,无法搭建DG,特制定以下数据库备份策略:1、每天凌晨1点进行数据库全库导出备份代码清单:expdp数据库用户名/密码@IP地址/数据库实例名schemas=模式名directory=dumpdirdumpfile=备份文件.dmpversion=11.1.0.7.0logfile=备份文件名.logcompression=allPS:如果需要删除历史数据,可通过
- Oracle expdp/impdp(数据泵)参数详解
Almeche
expdp/impdp
EXPDP参数参数名称默认值设置格式说明ATTACHATTCH=[schema_name.]job_name设置客户会话与已存在的作业之间的联系CONTENTALLCONTENT={ALL|DATA_ONLY|METADATA_ONLY}设置要导出的内容DIRECTORYDIRECTORY=’文件目录’设置导出文件和导出日志文件的文件名称DUMPFILEexpdat.dmpDUMPFILE=’文件
- Oracle-expdp备份变慢问题分析
牛牛的笔记
Oracleoracle数据库dba运维问题分析
问题背景:应用有一个每日跑批之前的备份作业,通过expdp备份应用的用户数据,数据量大概为600G左右,正常情况下可以在20分钟内跑完,但最近expdp备份完成时间却突然猛涨到要2小时32分才能备份完,导致后续的跑批作业都被延后,现需要协助分析备份作业为什么需要这么长时间才能完成备份以及如何恢复备份作业的执行效率。问题分析:首先检查了最近正常时间以及非正常时间下expdp执行备份的日志文件,可以看
- oracle pdb导出,Oracle 12c pdb使用expdp/impdp导入导出
GreedyAbyss
oraclepdb导出
1,需要为pdb添加tansnames2,导入导出时需要在userid参数内指定其tansnames的值,比如[emailprotected]数据泵导出1、查看当前的SID,查看pdb并切换到容器数据库,这里的pluggable数据库是pdborcl[[emailprotected]admin]$echo$ORACLE_SID[[emailprotected]admin]orcl登录cdb,查看p
- oracle 12c pdb expdp/impdp 数据导入导出
为什么不问问神奇的海螺呢丶
Oracledatabaseoracle数据库
环境(源)rac环境byoradbrac系统版本:RedHatEnterpriseLinuxServerrelease6.5软件版本:OracleDatabase12cEnterpriseEditionRelease12.1.0.2.0-64bitbyoradb1:172.17.38.44byoradb2:172.17.38.45(目的)单机环境byoradb系统版本:CentOSLinuxrel
- Oracle导入导出dump
星_河
oracle数据库
创建目录:createdirectory***as'/bak';#***名称可以随便命名需要手工创建/bak,并且此目录oracle用户有读取,目录地址空间要够用。查看所有目录select*fromDBA_DIRECTORIES;---查询导入导出的目录导入impdp****/****directory=dump_dirdumpfile=***.dmplogfile=***.logtable_ex
- expdp到ASM 文件系统 并拷贝
jnrjian
expdp
1.创建asm导出数据目录sql>selectname,total_mb,free_mbfromv$asm_diskgroup;确认集群asm磁盘组环境asmcmd>cd+DGDSDBasmcmd>mkdirdpbakasmcmd>ls-lsql>conn/assysdbacreatedirectoryexpdp_asm_diras'+DGDSDB/dpbak';createdirectoryex
- ORA-39165_ Schema ZWFW was not found.
福娃筱欢
oracle
问题描述明明已经创建zwfw用户但是impdp导入依旧提示ORA-39165:SchemaZWFWwasnotfound.--创建用户语句sys@TOPDH2023-12-2610:38:11>createuserzwfwidentifiedby"oracle";Usercreated.sys@TOPDH2023-12-2610:38:26>grantdba,connect,resourcetoz
- Oracle导出导入dmp
爱做泥煮做泥
oracleoracle数据库windowslinux
Oracle导入dmp文件导入之前要新建数据库实例。一、impdp导入(windows):1、打开命令提示符窗口,win+r,cmd,enter;2、连接数据库(ip端口不写时默认localhost:1521)使用命令“sqlplus”,命令格式:sqlplus用户名/口令@数据库名assysdba;例:C:\DocumentsandSettings\admin>sqlplussys/sys@or
- 通过建立dblink将数据库用expdp导出到远程服务器
zongzizz
Oracle数据库基础oracle数据库database
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录一、需求二、创建DBLINK1.测试环境2.创建dblink2.1查看当前用户是否有权限创建dblink2.2创建dblink的方法2.2.1方法一2.2.2方法二2.3删除dblink的方法2.4查看dblink的方法2.5测试dblink三、远程导出一、需求用EXPDP/IMPDP搭建测试库,本地无可用空间,需要直接将数据
- oracle备份恢复试验记录
末点
oracle数据库
1.EXPDP1.1全库导入导出源库单机安装,添加了sde用户源库路径:D:\app\Administrator\oradata\orcl源库版本信息:OracleDatabase11gEnterpriseEditionRelease11.2.0.4.0-64bitProductionPL/SQLRelease11.2.0.4.0-ProductionCORE11.2.0.4.0Productio
- Oracle Data Pump(数据泵)
无情白
Oracle数据迁移oracle数据库迁移学习
文章目录OracleDataPump(数据泵):概述OracleDataPump:优点exp/impEXPDP/IMPDP的主要区别数据泵由三部分组成:导入导出前应检查确认的信息ORACLEexpdp常用命令使用详解IMPDP常用命令介绍案例OracleDataPump(数据泵):概述作为用于高速数据和元数据移动的基于服务器的工具,OracleDataPump具有:可通过DBMS_DATAPUMP
- 工作随记:oracle集群下acfs资源丢失处理
DBA狗剩儿
工作随记oracle数据库
文章目录前言一、主机情况二、处理过程1.重启acfs资源2.重启CRS原因分析前言今早接到客户反馈,了解到备份出现问题,部分日期无expdp导出的备份文件。丢失20和22日的备份文件因为客户是rac集群,备份是分周几来进行备份的,所以丢失周三、周五备份直接定位到节点一出现问题。登录主机查看脚本以及备份情况。一、主机情况尝试手动挂载:二、处理过程1.重启acfs资源现在发现通过手动重启资源服务是行不
- DataDump基础框架及参数介绍
TrsenZhang
ORACLE基本概念
expdp/impdp工具看起来很像exp/imp,这里郑重的说明,这是两个不同的工具。通过expdpdump出来的文件,imp是无法dump进去库里,反之,亦然。一、oracle数据库泵工具组件1、命令行客户端expdp和impdp2、datapumpapi==>dbms_datapumppl/sql包3、metadataapi==>dbms_metadatapl/sql包下面的结构图是11g,
- SQL的各种连接查询
xieke90
UNION ALLUNION外连接内连接JOIN
一、内连接
概念:内连接就是使用比较运算符根据每个表共有的列的值匹配两个表中的行。
内连接(join 或者inner join )
SQL语法:
select * fron
- java编程思想--复用类
百合不是茶
java继承代理组合final类
复用类看着标题都不知道是什么,再加上java编程思想翻译的比价难懂,所以知道现在才看这本软件界的奇书
一:组合语法:就是将对象的引用放到新类中即可
代码:
package com.wj.reuse;
/**
*
* @author Administrator 组
- [开源与生态系统]国产CPU的生态系统
comsci
cpu
计算机要从娃娃抓起...而孩子最喜欢玩游戏....
要让国产CPU在国内市场形成自己的生态系统和产业链,国家和企业就不能够忘记游戏这个非常关键的环节....
投入一些资金和资源,人力和政策,让游
- JVM内存区域划分Eden Space、Survivor Space、Tenured Gen,Perm Gen解释
商人shang
jvm内存
jvm区域总体分两类,heap区和非heap区。heap区又分:Eden Space(伊甸园)、Survivor Space(幸存者区)、Tenured Gen(老年代-养老区)。 非heap区又分:Code Cache(代码缓存区)、Perm Gen(永久代)、Jvm Stack(java虚拟机栈)、Local Method Statck(本地方法栈)。
HotSpot虚拟机GC算法采用分代收
- 页面上调用 QQ
oloz
qq
<A href="tencent://message/?uin=707321921&Site=有事Q我&Menu=yes">
<img style="border:0px;" src=http://wpa.qq.com/pa?p=1:707321921:1></a>
- 一些问题
文强chu
问题
1.eclipse 导出 doc 出现“The Javadoc command does not exist.” javadoc command 选择 jdk/bin/javadoc.exe 2.tomcate 配置 web 项目 .....
SQL:3.mysql * 必须得放前面 否则 select&nbs
- 生活没有安全感
小桔子
生活孤独安全感
圈子好小,身边朋友没几个,交心的更是少之又少。在深圳,除了男朋友,没几个亲密的人。不知不觉男朋友成了唯一的依靠,毫不夸张的说,业余生活的全部。现在感情好,也很幸福的。但是说不准难免人心会变嘛,不发生什么大家都乐融融,发生什么很难处理。我想说如果不幸被分手(无论原因如何),生活难免变化很大,在深圳,我没交心的朋友。明
- php 基础语法
aichenglong
php 基本语法
1 .1 php变量必须以$开头
<?php
$a=” b”;
echo
?>
1 .2 php基本数据库类型 Integer float/double Boolean string
1 .3 复合数据类型 数组array和对象 object
1 .4 特殊数据类型 null 资源类型(resource) $co
- mybatis tools 配置详解
AILIKES
mybatis
MyBatis Generator中文文档
MyBatis Generator中文文档地址:
http://generator.sturgeon.mopaas.com/
该中文文档由于尽可能和原文内容一致,所以有些地方如果不熟悉,看中文版的文档的也会有一定的障碍,所以本章根据该中文文档以及实际应用,使用通俗的语言来讲解详细的配置。
本文使用Markdown进行编辑,但是博客显示效
- 继承与多态的探讨
百合不是茶
JAVA面向对象 继承 对象
继承 extends 多态
继承是面向对象最经常使用的特征之一:继承语法是通过继承发、基类的域和方法 //继承就是从现有的类中生成一个新的类,这个新类拥有现有类的所有extends是使用继承的关键字:
在A类中定义属性和方法;
class A{
//定义属性
int age;
//定义方法
public void go
- JS的undefined与null的实例
bijian1013
JavaScriptJavaScript
<form name="theform" id="theform">
</form>
<script language="javascript">
var a
alert(typeof(b)); //这里提示undefined
if(theform.datas
- TDD实践(一)
bijian1013
java敏捷TDD
一.TDD概述
TDD:测试驱动开发,它的基本思想就是在开发功能代码之前,先编写测试代码。也就是说在明确要开发某个功能后,首先思考如何对这个功能进行测试,并完成测试代码的编写,然后编写相关的代码满足这些测试用例。然后循环进行添加其他功能,直到完全部功能的开发。
- [Maven学习笔记十]Maven Profile与资源文件过滤器
bit1129
maven
什么是Maven Profile
Maven Profile的含义是针对编译打包环境和编译打包目的配置定制,可以在不同的环境上选择相应的配置,例如DB信息,可以根据是为开发环境编译打包,还是为生产环境编译打包,动态的选择正确的DB配置信息
Profile的激活机制
1.Profile可以手工激活,比如在Intellij Idea的Maven Project视图中可以选择一个P
- 【Hive八】Hive用户自定义生成表函数(UDTF)
bit1129
hive
1. 什么是UDTF
UDTF,是User Defined Table-Generating Functions,一眼看上去,貌似是用户自定义生成表函数,这个生成表不应该理解为生成了一个HQL Table, 貌似更应该理解为生成了类似关系表的二维行数据集
2. 如何实现UDTF
继承org.apache.hadoop.hive.ql.udf.generic
- tfs restful api 加auth 2.0认计
ronin47
目前思考如何给tfs的ngx-tfs api增加安全性。有如下两点:
一是基于客户端的ip设置。这个比较容易实现。
二是基于OAuth2.0认证,这个需要lua,实现起来相对于一来说,有些难度。
现在重点介绍第二种方法实现思路。
前言:我们使用Nginx的Lua中间件建立了OAuth2认证和授权层。如果你也有此打算,阅读下面的文档,实现自动化并获得收益。SeatGe
- jdk环境变量配置
byalias
javajdk
进行java开发,首先要安装jdk,安装了jdk后还要进行环境变量配置:
1、下载jdk(http://java.sun.com/javase/downloads/index.jsp),我下载的版本是:jdk-7u79-windows-x64.exe
2、安装jdk-7u79-windows-x64.exe
3、配置环境变量:右击"计算机"-->&quo
- 《代码大全》表驱动法-Table Driven Approach-2
bylijinnan
java
package com.ljn.base;
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.Collections;
import java.uti
- SQL 数值四舍五入 小数点后保留2位
chicony
四舍五入
1.round() 函数是四舍五入用,第一个参数是我们要被操作的数据,第二个参数是设置我们四舍五入之后小数点后显示几位。
2.numeric 函数的2个参数,第一个表示数据长度,第二个参数表示小数点后位数。
例如:
select cast(round(12.5,2) as numeric(5,2))  
- c++运算符重载
CrazyMizzz
C++
一、加+,减-,乘*,除/ 的运算符重载
Rational operator*(const Rational &x) const{
return Rational(x.a * this->a);
}
在这里只写乘法的,加减除的写法类似
二、<<输出,>>输入的运算符重载
&nb
- hive DDL语法汇总
daizj
hive修改列DDL修改表
hive DDL语法汇总
1、对表重命名
hive> ALTER TABLE table_name RENAME TO new_table_name;
2、修改表备注
hive> ALTER TABLE table_name SET TBLPROPERTIES ('comment' = new_comm
- jbox使用说明
dcj3sjt126com
Web
参考网址:http://www.kudystudio.com/jbox/jbox-demo.html jBox v2.3 beta [
点击下载]
技术交流QQGroup:172543951 100521167
[2011-11-11] jBox v2.3 正式版
- [调整&修复] IE6下有iframe或页面有active、applet控件
- UISegmentedControl 开发笔记
dcj3sjt126com
// typedef NS_ENUM(NSInteger, UISegmentedControlStyle) {
// UISegmentedControlStylePlain, // large plain
&
- Slick生成表映射文件
ekian
scala
Scala添加SLICK进行数据库操作,需在sbt文件上添加slick-codegen包
"com.typesafe.slick" %% "slick-codegen" % slickVersion
因为我是连接SQL Server数据库,还需添加slick-extensions,jtds包
"com.typesa
- ES-TEST
gengzg
test
package com.MarkNum;
import java.io.IOException;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
import javax.servlet.ServletException;
import javax.servlet.annotation
- 为何外键不再推荐使用
hugh.wang
mysqlDB
表的关联,是一种逻辑关系,并不需要进行物理上的“硬关联”,而且你所期望的关联,其实只是其数据上存在一定的联系而已,而这种联系实际上是在设计之初就定义好的固有逻辑。
在业务代码中实现的时候,只要按照设计之初的这种固有关联逻辑来处理数据即可,并不需要在数据库层面进行“硬关联”,因为在数据库层面通过使用外键的方式进行“硬关联”,会带来很多额外的资源消耗来进行一致性和完整性校验,即使很多时候我们并不
- 领域驱动设计
julyflame
VODAO设计模式DTOpo
概念:
VO(View Object):视图对象,用于展示层,它的作用是把某个指定页面(或组件)的所有数据封装起来。
DTO(Data Transfer Object):数据传输对象,这个概念来源于J2EE的设计模式,原来的目的是为了EJB的分布式应用提供粗粒度的数据实体,以减少分布式调用的次数,从而提高分布式调用的性能和降低网络负载,但在这里,我泛指用于展示层与服务层之间的数据传输对
- 单例设计模式
hm4123660
javaSingleton单例设计模式懒汉式饿汉式
单例模式是一种常用的软件设计模式。在它的核心结构中只包含一个被称为单例类的特殊类。通过单例模式可以保证系统中一个类只有一个实例而且该实例易于外界访问,从而方便对实例个数的控制并节约系统源。如果希望在系统中某个类的对象只能存在一个,单例模式是最好的解决方案。
&nb
- logback
zhb8015
loglogback
一、logback的介绍
Logback是由log4j创始人设计的又一个开源日志组件。logback当前分成三个模块:logback-core,logback- classic和logback-access。logback-core是其它两个模块的基础模块。logback-classic是log4j的一个 改良版本。此外logback-class
- 整合Kafka到Spark Streaming——代码示例和挑战
Stark_Summer
sparkstormzookeeperPARALLELISMprocessing
作者Michael G. Noll是瑞士的一位工程师和研究员,效力于Verisign,是Verisign实验室的大规模数据分析基础设施(基础Hadoop)的技术主管。本文,Michael详细的演示了如何将Kafka整合到Spark Streaming中。 期间, Michael还提到了将Kafka整合到 Spark Streaming中的一些现状,非常值得阅读,虽然有一些信息在Spark 1.2版
- spring-master-slave-commondao
王新春
DAOspringdataSourceslavemaster
互联网的web项目,都有个特点:请求的并发量高,其中请求最耗时的db操作,又是系统优化的重中之重。
为此,往往搭建 db的 一主多从库的 数据库架构。作为web的DAO层,要保证针对主库进行写操作,对多个从库进行读操作。当然在一些请求中,为了避免主从复制的延迟导致的数据不一致性,部分的读操作也要到主库上。(这种需求一般通过业务垂直分开,比如下单业务的代码所部署的机器,读去应该也要从主库读取数