- 博客(34)
- 收藏
- 关注
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 分库分表如何做到永不迁移数据和避免热点?
一、前言中大型项目中,一旦遇到数据量比较大,小伙伴应该都知道就应该对数据进行拆分了。有垂直和水平两种。垂直拆分比较简单,也就是本来一个数据库,数据量大之后,从业务角度进行拆分多个库。如下图,独立的拆分出订单库和用户库。水平拆分的概念,是同一个业务数据量大之后,进行水平拆分。上图中订单数据达到了4000万,我们也知道mysql单表存储量推荐是百万级,如果不进行处理,mysql单表数据太大,会导致性能变慢。使用方案可以参考数据进行水平拆分。把4000万数据拆分4张表或者更多。当然也可以分库,
2021-09-02 14:57:45
164
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 CentOS7安装NFS服务端和客户端
服务端安装 1 2 3 4 5 6 7 8 9 #安装 yum -yinstallnfs-utils rpcbind systemctlenablenfs-server #配置 vim/etc/exports /home/wwwroot172...
2019-07-08 10:24:26
1912
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 四种JavaEE架构简介
1、传统三层架构(all in one项目)传统三层架构大致可以分为表现层,业务层和持久层(数据访问层)。其中表现层负责接受请求和转发请求。业务层负责处理请求(注:事务管理,日志记录等AOP类型的操作均封装在这一层)。持久层主要负责数据库与实体之间的操作。struts典型的mvc三层架构:模型层,视图层,控制层。SpringMVC中的MVC指的是什么:当一个请求到达服务器时,由中央控制...
2019-07-08 09:38:20
1776
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Linux环境下Oracle创建表空间以及用户
首先是Oracle的安装,具体安装的Oracle的步骤这边就不进行介绍了,Oracle安装完成后,是自带实例的,建议:如果进行新的开发,可以自己建一个实例,这边就不进行赘述。这边需要用到一个软件:PLSQL来进行操作数据库实例,进行创建表和用户。安装完成PLSQL后,打开sql命令窗口,这个就是编写SQL语句的文本框。在文中写入对应的sql语句1:创建表空间: creat...
2018-09-29 10:52:56
5303
原创 mybatis-plus的AR模式演示
一、ActiveRecord:Active Record(活动记录),是一种领域模型模式,特点是一个模型类对应关系型数据库中的一个表,而模型类的一个实例对应表中的一行记录。ActiveRecord 一直广受动态语言( PHP 、 Ruby 等)的喜爱,而 Java 作为准静态语言,对于 ActiveRecord 往往只能感叹其优雅,所以 MP 也在 AR 道路上进行了一定的探索,仅仅需要让实体...
2019-07-11 17:12:22
1556
原创 mybatis条件构造器(EntityWrapper)的使用
基本的 CRUD 操作,我们仅仅需要继承一个 BaseMapper 即可实现大部分单表 CRUD 操作。BaseMapper 提供了多达 17 个方法供使用, 可以极其方便的实现单一、批量、分页等操作,极大的减少开发负担。但是mybatis-plus的强大不限于此,请看如下需求该如何处理:需求:我们需要分页查询 tb_employee 表中,年龄在 18~50 之间性别为男且姓名为 xx 的所有...
2019-07-11 17:04:47
10682
原创 mybatis-plus的使用
前言:mybatis在持久层框架中还是比较火的,一般项目都是基于ssm。虽然mybatis可以直接在xml中通过SQL语句操作数据库,很是灵活。但正其操作都要通过SQL语句进行,就必须写大量的xml文件,很是麻烦。mybatis-plus就很好的解决了这个问题。一、mybatis-plus简介:Mybatis-Plus(简称MP)是一个 Mybatis 的增强工具,在 Mybatis ...
2019-07-11 17:03:34
257
原创 建立SFTP目录权限控制
在向服务器上传文件时,现在我们很多都是拿服务器的登录用户,通过第3方工具(wincp,xftp等)直接上传的,这些用户可以进入服务器的大部分目录,下载拥有可读权限的文件,直接拿用户做sftp还是存在风险的,尤其是向第3方人员或服务提供sftp服时,所以在提供专用的sftp用户有必要做好权限的控制现在对sftp用户的控制方法,一般就是把访问目录限定在用户加目录下,翻看了一些网上资料和自身实...
2019-07-08 10:32:28
2078
原创 docker配置http代理
创建目录 1 mkdir-p/etc/systemd/system/docker.service.d 创建配置文件 1 2 echo'[Service]'>>/etc/systemd/system/docker.service.d/http-proxy.conf ...
2019-07-08 10:25:28
703
原创 导出excel,并生成多个sheet(使用Hutool工具类)
1.引入POI依赖 :<!-- https://mvnrepository.com/artifact/org.apache.poi/poi-ooxml --><dependency> <groupId>org.apache.poi</groupId><artifactId>poi-ooxml</artifact...
2019-07-08 09:58:00
5765
原创 linux服务器之间传输文件方法之一:scp
本文为大家分享了linux服务器之间传输文件的四种方式,供大家参考,具体内容如下1. scp【优点】简单方便,安全可靠;支持限速参数【缺点】不支持排除目录【用法】scp就是secure copy,是用来进行远程文件拷贝的。数据传输使用 ssh,并且和ssh 使用相同的认证方式,提供相同的安全保证 。命令格式:scp [参数] <源地址(用户名@IP地址或主机名)>:&l...
2018-09-29 11:27:16
1637
原创 Linux环境下添加防火墙端口示列
执行命令:firewall-cmd --permanent --zone=public --add-port=3306/tcp, 若提示FirewallD is not running的话,说明防火墙没有开启查看防火墙状态:systemctl status firewalld ...
2018-09-29 11:17:20
171
原创 Linux环境下重启Oracle服务和监听
有时候可能会出现服务器电脑出问题,需要重启,重启机器后需要重启Oracle数据库(1) 以oracle身份登录数据库,命令:su – oracle (2) 进入Sqlplus控制台,命令:sqlplus /nolog (3) 以系统管理员登录,命令:connect / as sysdba (4) 启动数据库,命令:startup (5) 如果是关闭数据库,命令:shutdown imm...
2018-09-29 11:08:04
2301
原创 Oracle数据库将表空间的所有表字段变为大写
批量将空间内所有表的所有字段名变成大写:begin for t in (select table_name tn from user_tables) loop begin for c in (select column_name cn from user_tab_columns where table_name=t.tn) loop b...
2018-09-29 11:05:11
715
原创 Linux下Oracle数据库创建索引限制添加数据
多列索引: create index 索引名 on 表(字段1 ,字段2);创建唯一索引: create unique index 索引名 on 表(字段1 ,字段2);
2018-09-29 11:03:46
295
原创 Linux环境下Oracle数据库编辑数据出现数据被另外一个用户锁住的解决方法
查找当前登录用户有哪些用户登录:1:select username, sid, serial# from v$session where username='QR_BASE_DBA';找到对应登录用户session;杀掉用户session2:alter system kill session 'sid, serial' ;...
2018-09-29 10:58:09
236
原创 Linux服务器重启命令大全
一、Linux 的五个重启命令 1、shutdown 2、poweroff 3、init 4、reboot 5、halt 二、五个重启命令的具体说明 shutdown reboot 在linux下一些常用的关机/重启命令有shutdown、halt、reboot、及init,它们都可以达到重启系统的目的,但每个命令的内部工作过程是不同的,通过本...
2018-09-29 10:39:06
12905
原创 Linux环境下登录Oracle数据库出现-bash-4.2$的问题
出现这样的问题是因为缺少用户配置文件,因为在Linux下每次通过useradd创建新的用户时,都会将所有的配置文件从/etc/skel复制到新用户的主目录下,一般默认在home下面的新用户主目录下,而关于/etc/skel这个目录,是主要被useradd所用到。解决方法:执行命令:source ~/.bashrc ...
2018-09-29 10:18:16
1825
原创 Linux环境下删除归档日志
我们都都知道在controlfile中记录着每一个archivelog的相关信息,当然们在OS下把这些物理文件delete掉后,在我们的controlfile中仍然记录着这些archivelog的信息,在oracle的OEM管理器中有可视化的日志展现出,当我们手工清除archive目录下的文件后,这些记录并没有被我们从controlfile中清除掉,也就是oracle并不知道这些文件已经不存在...
2018-09-29 10:09:37
2885
原创 链接
理解联接与联合的区别:联合是纵向把数据和在一起;联接是横向地把数据链接到一起;链接也称为笛卡尔乘积表相连接过后;总的行数等于两个表的行数的乘积数目&使用多表相等联接:形式一:如select * from student join teacher; select * from table1 join table2 on table1.ID=table2.ID join
2016-01-17 10:09:14
247
原创 组合查询
@子查询可以运用的地方: select -----在select中嵌套,增加的是一个列,ta它返回的是单行单列的数据。 from ---后嵌套,把子查询当成一个表,列如:select * from (新表) as 对新表进行命名。 where子句中的子查询----select 列a,列b from 表 where 列a
2016-01-17 10:06:43
230
原创 聚合函数与分组
@使用聚合函数进行统计汇总:count:返回结果集中行的数目sum:返回结果集中所有值得总和avg:返回结果集中所有值得平均值max:返回集中所有值得最大值min :返回集中所有值得最小值#执行行和列计数 select count(《计数范围》) from 表名; *(包括null值) all 非空值行
2016-01-16 21:54:47
333
原创 简单的数据查询
@投影操作:select 列名列表 from 表名; 如果选择某个表中的多个列,那么烈与列之间用逗号隔开; 如果是单个列,只需要列出该列即可; 如果选择所有列,可以用简单的*号代替列名列表理解表前缀:对投影的列进行标识列表名:就是对要投影的列命名,便于读懂要投影的列的意思,如select count(t-name,‘-’,t-addr
2016-01-16 21:18:53
231
原创 使用DML语句更改数据
1使用INSERT语句添加数据2使用update 语句修改数据3使用DALECT 语句删除数据@添加数据:插入单行记录:INTSERT INTO () values (); insert into students (studentID,studentname)values (1,'John1');
2016-01-13 19:53:37
305
原创 保证数据的完整性
数据完整性=可靠性+准确性。保证数据的完整性可以从下面几个方面进行完善;1 实体完整性2 域完整性3 引用完整性4 用户自定义完整性@实体完整性:保证行数据是有效的(主键约束,唯一约束)@保证列数据是有效的(非空约束,默认约束,外键约束等)主键约束:PRIMARY KEY :-运用主键是要注意的是,给指定的行是唯一的、它的内容不可以为空,并且一个表中只能用一个
2016-01-13 19:12:01
1228
原创 管理数据库和表
2.1数据库的创建和命名:创建:CREATE DATABACE 数据库名链接:USEB 数据库名删除:DROP DATABACE 数据库名2.2数据类型:1整型数据类型:@TINYINT型 1字节 @SMALLINT 2字节 @MEDIUMINT 3字节 @INT 4字节2浮点型数据类型:@REAL型 4字节 @FLOAT 8字节
2016-01-05 23:41:14
246
原创 关系型数据库管理系统简介
@数据库的集中式控制的优点:1降低存储数据的冗余度2更高的数据一致性3存储的数据可以共享4可以建立 数据库 所遵循的标准5便于维护数据的完整性6能够实现数据的安全性@数据在数据库中的存储形式1层次模型(父与子的关系)2网状模型(列如食物链)3关系模型4对象模型5noSQL@关系型数据库的额的基本概念关系模型是由实体和联系组成的,它的核心是表
2016-01-05 13:41:57
415
原创 模块化程序设计函数与方法
目标理解模块化程序设计方法掌握函数的定义、调用方法@函数的分类 ;一种是系统提供的标准函数,另一种就是用户自己定义的函数函数的定义的格式为: 函数类型 函数名称(形式参数表){ 说明语句序列 可执行语句序列}注意:不管用户定义了多少个函数;一个完整的c语言程序可以由一个或多个函数组成,但必须有一个且只有一个main()的函数
2015-12-19 17:53:32
1313
原创 复杂的数据类型
c语言的数据类型可分为:基本类型;指针类型;构造类型;空类型其中基本类型包括:整数型int 浮点型(float double)字符型char构造类型包括:数组;结构体;联合体;枚举型1结构体结构体就是可以共用的部分,相当于母版一样。结构欧体的类型的的声明方式;struct 结构名{数据类型1 成员名1;数据类型2 成员名2;数据类型3 成员
2015-12-14 19:37:49
329
原创 字符数组与字符串
都是用char定义的1char:一个字节,一个汉字占两个字节。2用单引号表示字符‘a’。3字符串不能先定义后赋值,但可以用strcpy进行赋值(strcpy(name,”内容“));4字符数组的输入可以不用取值符;5理解strlen与sizeof的用法以及区别(strlen计算字符长度(输入的内容长度)sizeof(计算的是字符数组的空间长度)6字符串的声明:方法一char
2015-12-13 11:24:53
214
原创 数组的理解
数组分为一维数组和二维数组;下面就介绍他们的特点以及用法;数组就是按一定的顺序 排列,具有某种相同性质的同类型变量及集合。他们的特性是:定义必须是常量,应用可以是变量。数组在内存中 顺序排列,并通过下标相互区分,所以又称为下标变量,注意不能下标越界1一维数组:一维数组的定义及初始化:格式为:数据类型 数组名{整形常量表达式}。@给一维数组初始化,初始化长度不能大于数组长
2015-12-13 10:16:32
441
原创 20人成绩的分段并分段
#include int main (){int a[20];int i,j,k;int temp;printf("请输入20人的成绩\n");for(i=0;iscanf("%d",&a[i]);}for(i=0;ifor(j=0;jif(a[j]>a[j+1]){temp=a[j];a[j+1=a[j]];a[j+1]=temp;
2015-12-09 22:05:09
662
原创 循环的理解和比较
1 continue与break的区别:break是终止它所在的switch或循环语句的执行;break语句只能出现在switch或循环语句的循环体中。而continue是终止本次循环,开始下一次循环,而不是结束循环,continue只能出现在循环体中。2 几种循环的区别:不知道循环一般用do-while,知道循环一般用for,for语句和while语句先判断循环控制条件,
2015-12-07 13:31:44
351
原创 c语言总结
c语言总结在我的心目中,程序设计,高大上。是一门专门的课程,我对它充满了知识的渴望,由程序设计牵引出来了如下概念:1. 软件开发概述;2. 编程语言概述;3. 数据存储与输入输出;4. 运算符、表达式和语句;5. 选择结构的程序设计;⦁ 软件开发概述1. 说到开发,就让人联想到软件、程序与计算机语言等概念软件:软件就是为完成某些特定功能而编制的一个到多个
2015-12-03 13:35:05
381
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人