
数据库
各类数据库合集
3333333_
大部分都是记录云笔记,有时候复制过来就挺乱的,而且可能复制1年或者几个月前记录的。随缘吧。
展开
-
数据库存储表情
这个问题,原因是UTF-8编码有可能是两个、三个、四个字节。Emoji表情或者某些特殊字符是4个字节,而Mysql的utf8编码最多3个字节,所以数据插不进去。修改项目中的连接数据库的url,将characterEncoding=utf-8去掉,此步骤一定要进行。然后重启mysql 命令:/etc/init.d/mysqld start。将数据库中对应的字段,改为utf8mb4_general_ci。这是mysql5.6啦。2. 修改数据库编码为utb8mb4。1. 在程序中过滤emoji表情;原创 2023-08-23 17:19:22 · 164 阅读 · 0 评论 -
influxdb初识
点击上图最上方红色框的按钮就能出结果,如下。windows客户端。原创 2023-08-10 22:46:16 · 86 阅读 · 0 评论 -
levelDB,rocksDB,tikv优缺点
LevelDB是Google开源的一个高性能键值存储引擎,具有以下优点和缺点:优点:缺点:RocksDB是一种高性能的嵌入式键值存储引擎,具有以下优点和缺点:优点:缺点:TiKV是一个分布式事务键值存储引擎,具有以下优点和缺点:原创 2023-08-10 22:41:48 · 811 阅读 · 0 评论 -
levelDB,rocksDB,tikv架构设计
每个SSTable文件由多个数据块(Block)组成,每个数据块的大小可以配置,数据块中的数据是按照键的顺序存储的。RocksDB采用的仍然是LSM树的数据存储结构,但是与LevelDB不同的是,RocksDB支持多个列族(Column Family),每个列族都有一个单独的LSM树,数据按照键值和列族进行存储。总之,RocksDB在继承了LevelDB的优点的同时,进行了更加灵活的优化,支持多种数据模型、内存管理策略和并发控制方式,提供了高性能、灵活、可靠的数据存储和管理能力。原创 2023-08-10 22:41:06 · 308 阅读 · 0 评论 -
levelDB rocksDB和tikv的优点和缺点对比
综上所述,LevelDB适用于小规模的本地数据存储,RocksDB适用于较大规模的本地数据存储,TiKV适用于大规模的分布式数据存储和计算。不同的应用场景需要根据具体需求选择适合的存储引擎。原创 2023-08-10 22:40:25 · 551 阅读 · 0 评论 -
leveldb的sstable
leveldb架构。原创 2023-08-10 22:39:55 · 79 阅读 · 0 评论 -
wiscKey论文精读
1.经典的LSM实现-LevelDB。3.KV分离对SSD的优化。4.KV分离带来的挑战。原创 2023-08-10 22:39:20 · 91 阅读 · 0 评论 -
数据库MVVC小记 并发写
并发写回滚自己回滚版本2。原创 2023-08-10 22:38:26 · 84 阅读 · 0 评论 -
Redis集群主从复制数据延迟
编写脚本定时定时查询Redis主机跟从机的偏移量,如果偏移量过大则重新生成配置文件。info replication 可以查看 偏移量 offset。写个脚本监控主从偏移量 读取偏移量。把 偏移量大的从机剔除。如果超过某个阈值就报警。原创 2023-08-05 21:13:32 · 148 阅读 · 0 评论 -
数据索引原理
B-Tree:在横向上面扩展新的节点,从而容纳更多的元素,这样树叶变矮了。缺点随着元素的增加,树会越来越高 通过磁盘去读取的次数多 I/O开销。B树 非叶子节点也会保存数据 这样 就没有B+数存的数据多。hash不适合范围查询,随机查找需要的次数比较多。缺点:如果元素递增,会退化合成链表。优点:快速定位到要找的元素。大概 一页能存2000多万。原创 2023-08-04 12:43:50 · 72 阅读 · 0 评论 -
MySQL执行原理
select * from test where sex='女'or 右边加入不是索引字段 就有可能不走索引。2.不同存储引擎查找方式 innodb引擎。对数据库的一列或多列的数据进行排序的结构。hash值一样,后面用链表存储相同的值。计算步骤,函数不走,or ,like。1.数据库执行原理与索引查找原理。like '李%' 走索引。like '%李%' 不走。3.大型网站的优化方案。原创 2023-08-03 20:25:39 · 63 阅读 · 0 评论 -
单机数据库优化方案分库分表
由于垂直切分是按照业务的分类将表分散到不同的库,所以有些业务表会过于庞大,存在单库读写与存储瓶颈,所以就需要水平拆分来做解决。分库:单一个表数据量过大,就可以把表的数据按照规则来做划分,然后存到多个结构相同的表中。• 部分业务表无法 join,只能通过接口方式解决,提高了系统复杂度;• 受每种业务不同的限制存在单库性能瓶颈,不易数据扩展跟性能提高;• 拆分规则抽象好,join 操作基本可以数据库做;• 不存在单库大数据,高并发的性能瓶颈;• 拆分后业务清晰,拆分规则明确;• 分片事务一致性难以解决;原创 2023-08-03 20:24:54 · 86 阅读 · 0 评论 -
Linux上ElasticSearch搭建7.9.2
国内源下载ES到 https://mirrors.huaweicloud.com/elasticsearch/7.9.2/ 选择自己需要的版本,我这里是7.9.2wget https://mirrors.huaweicloud.com/elasticsearch/7.9.2/elasticsearch-7.9.2-linux-x86_64.tar.gztar -xzvf elasticsearch-7.9.2-linux-x86_64.tar.gzcd elasticsearch-7.9.原创 2020-11-07 12:12:23 · 452 阅读 · 0 评论 -
elasticsearch乐观锁机制实现版本控制_primary_term和_seq_no
版本7.5.0_primary_term:_primary_term也和_seq_no一样是一个整数,每当Primary Shard发生重新分配时,比如重启,Primary选举等,_primary_term会递增1。_primary_term主要是用来恢复数据时处理当多个文档的_seq_no一样时的冲突,比如当一个shard宕机了,raplica需要用到最新的数据,就会根据_primary_term和_seq_no这两个值来拿到最新的document旧版本(具体哪个版本改的不清楚)的elas原创 2020-10-13 16:28:31 · 3527 阅读 · 0 评论 -
kibana
elasticsearch原创 2023-01-29 22:52:02 · 61 阅读 · 0 评论 -
Mac上安装ElasticSearch
【代码】Mac上安装ElasticSearch。原创 2023-01-30 20:46:32 · 246 阅读 · 0 评论 -
kibana restful api 请求 elasticsearch 增删改查
版本 7.5.0创建索引PUT /test获取索引GET /test删除索引DELETE /test添加数据PUT /test/_doc/1{ "name":"bob", "age":19, "sex":"男"}添加数据自动生成_idPOST /test/_doc{ "name":"bob", "age":19, "sex":"男"}返回结果{ "_index" : "test", "_type" : "_doc", "_id"原创 2020-10-13 17:00:45 · 431 阅读 · 0 评论 -
集成Spring、Elasticsearch、paoding,将ES服务嵌入到Web程序
elasticsearch java原创 2023-01-30 20:51:02 · 128 阅读 · 0 评论 -
Mac上安装ElasticSearch必要环境Java8
elasticsearch java原创 2023-01-30 20:47:43 · 451 阅读 · 0 评论 -
ElasticSearch的9200端口和9300端口区别
9200用于外部通讯,基于http协议,程序与es的通信使用9200端口。9300jar之间就是通过tcp协议通信,遵循tcp协议,es集群中的节点之间也通过9300端口进行通信。原创 2020-10-13 16:38:47 · 2105 阅读 · 0 评论 -
golang 批量插入elasticsearch
golang elasticsearch原创 2023-01-29 22:50:16 · 1213 阅读 · 0 评论 -
elasticsearch版本控制
primary_term主要是用来恢复数据时处理当多个文档的_seq_no一样时的冲突,比如当一个shard宕机了,raplica需要用到最新的数据,就会根据_primary_term和_seq_no这两个值来拿到最新的document。_primary_term:_primary_term也和_seq_no一样是一个整数,每当Primary Shard发生重新分配时,比如重启,Primary选举等,_primary_term会递增1。PS 外部版本控制扔跟就版本相同。原创 2023-01-29 22:53:49 · 183 阅读 · 0 评论 -
elasticsearch DSL语言查询
DSL 查询使用 JSON 格式的请求体与 Elasticsearch 交互,可以实现各种各样的查询需求。DSL查询语句查主要分两种类型:1、叶子查询语句:用于查询特殊字段的特殊值,例如:match, term, range 等。2、复合查询语句:可以合并其他的叶子查询或复合查询,从而实现非常复杂的查询逻辑。查找所有GET /test/_search{ "query": { "match_all": {} }}查询名字包含bob,同时按照价格年龄降序排序GET /test原创 2020-10-13 17:41:27 · 604 阅读 · 0 评论 -
ElasticSearch入门笔记
elasticsearch原创 2023-01-30 20:51:45 · 100 阅读 · 0 评论 -
Diagnose unassigned shards
elasticsearch原创 2023-01-29 22:50:50 · 162 阅读 · 0 评论 -
PHP操作ES使用案例
elasticsearch php原创 2023-01-30 20:48:45 · 654 阅读 · 0 评论 -
MySQL删除重复和冗余的索引
mysql原创 2022-11-27 13:43:43 · 338 阅读 · 0 评论 -
MySql数据库从库同步的延迟问题及解决方案
1)、MySQL数据库主从同步延迟原理mysql主从同步原理:主库针对写操作,顺序写binlog,从库单线程去主库顺序读”写操作的binlog”,从库取到binlog在本地原样执行(随机写),来保证主从数据逻辑上一致。mysql的主从复制都是单线程的操作,主库对所有DDL和DML产生binlog,binlog是顺序写,所以效率很高,slave的Slave_IO_Running线程到主库取日志,效率比较高,下一步,问题来了,slave的Slave_SQL_Running线程将主库的DDL和DML操作在sl原创 2020-11-15 23:00:51 · 1223 阅读 · 0 评论 -
深入解析MySQL分区(Partition)功能 MySQL partition
http://note.youdao.com/s/aQPRTWps原创 2020-11-15 23:01:32 · 173 阅读 · 0 评论 -
mysql大体结构与执行流程
如格式乱了请看http://note.youdao.com/s/A2WD9Iatmysql大体结构1. 结构介绍简化版mysql结构MySQL逻辑架构整体分为三层 :客户端 : 并非MySQL所独有,诸如 : 连接处理、授权认证、安全等功能均在这一层处理 核心服务 : 包括查询解析、分析、优化、缓存、内置函数(比如 : 时间、数学、加密等函数),所有的跨存储引擎的功能也在这一层实现 : 存储过程、触发器、视图等 存储引擎 : 负责 MySQL 中的数据存储和提取,和 ..原创 2020-11-22 21:28:04 · 107 阅读 · 0 评论 -
mysql大表的更新和删除
上面可以使用工具实现 pt-online-schema-chage。分批次操作可以给主从复制同步时间。原创 2022-11-29 09:01:16 · 180 阅读 · 0 评论 -
mysql MaxScale
mysql原创 2022-11-27 13:42:22 · 248 阅读 · 0 评论 -
Mysql架构 MMM与MHA区别
在MySQL故障切换过程中,MHA能做到在0~30秒之内自动完成数据库的故障切换操作,并且在进行故障切换的过程中,MHA能在最大程度上保证数据的一致性,以达到真正意义上的高可用。目前MHA主要支持一主多从的架构,要搭建MHA,要求一个复制集群中必须最少有三台数据库服务器,一主二从,即一台充当master,一台充当备用master,另外一台充当从库,因为至少需要三台服务器,出于机器成本的考虑,淘宝也在该基础上进行了改造,目前淘宝TMHA已经支持一主一从。主服务器切换后,如何通知应用新的主服务器的ip地址。原创 2022-12-02 18:29:27 · 678 阅读 · 0 评论 -
docker 安装MySQL5.6
安装docker pull mysql5.6docker images➜ ~ docker images REPOSITORY TAG IMAGE ID CREATED SIZEdocker.io/mysql 5.6原创 2020-11-15 22:59:31 · 153 阅读 · 0 评论 -
MySQL中间件mysql_proxy 安装 使用 以及读写分离测试
多库 账号密码 推荐设置为一致下载https://downloads.mysql.com/archives/proxy/安装 解压后即可使用tar -zxvf mysql-proxy-0.8.5-linux-glibc2.3-x86-64bit.tar.gz➜ mysql-proxy ll总用量 8.0Kdrwxr-xr-x 2 7161 wheel 75 8月 19 2014 bindrwxr-xr-x 2 7161 wheel 4.0K 8月 19 2014 inclu原创 2020-11-15 23:00:10 · 181 阅读 · 0 评论 -
Linux MySQL+docker MySQL 搭建主主(练手)
主主复制中必须要解决的事情就是自增主键的问题。如果服务器1的数据库表1主键id增加到10了,此时二进制数据还没到达服务器2,如果服务器2对应的表恰好要插入数据,那么新数据主键id也是10,那就乱套了。搭建两台MySQL服务器,实现主主复制做双机热备份,宿主机Linux MYSQL和Linux上用docker安装一个MySQL实现主主复制。我在 /home/xxxx/Desktop/data/docker/mysql/conf 下创建了docker.cnf。序列每次访问,生成递增/递减的数据.原创 2022-12-02 18:11:46 · 408 阅读 · 0 评论 -
pt-table-sync解决MySQL数据不一致
pt-table-sync是解决主从数据不一致的绝佳工具,也可也用于两个不是主从数据库之间数据同步,不能同步ddl,只能同步数据,以下为常用例子:其中h=192.168.56.101为源端,h=192.168.56.102为目标端:1.sync两个独立数据库,无主从复制关系,同步数据库中所有的表,并排除特定数据库:pt-table-sync --charset=utf8 --ignore-databases=mysql,sys u=admin,p=admin,h=192.168.56.101,P原创 2020-11-24 18:53:56 · 280 阅读 · 0 评论 -
Mysql 查看死锁和解除死锁
mysql原创 2022-11-27 13:41:36 · 1203 阅读 · 0 评论 -
mysql—MHA原理与实现
(1)从宕机崩溃的master保存二进制日志事件(binlog events);(4)应用从master保存的二进制日志事件(binlog events);-应用从master保存的二进制日志事件(binlogevents)。(3)应用差异的中继日志(relay log)到其他的slave;-应用差异的中继日志(relay log)到其它slave。(6)使其他的slave连接新的master进行复制;-使其它的slave连接新的master进行复制。(5)提升一个slave为新的master;原创 2022-12-02 18:28:39 · 327 阅读 · 0 评论 -
Linux MySQL+docker MySQL 搭建主从(练手)
目标搭建两台MySQL服务器,宿主机Linux作为主服务器,Linux上用docker安装一个MySQL作为从服务器,实现主从复制环境主数据库: 192.168.1.52:3306从数据库: 192.168.1.52:13306mysql版本都是5.6.49, for linux数据库准备保证两个数据库中的库和数据是一致的,自己从主数据库复制一个数据库就行啦在主数据中创建一个同步账号(可不创建使用现有的),如果仅仅为了主从复制创建账号,只需要授予REPLICATION SLAVE权限。原创 2020-11-15 22:58:17 · 132 阅读 · 0 评论