数据库
心雨先生
做一条有理想的咸鱼
展开
-
生产事故(MongoDB数据分布不均解决方案)
事故集合:可以很明显可以看到我们这个集合的数据严重分布不均匀。一共有8个分片,面对这个情况我首先想到的是手动拆分数据块,但这不是解决此问题的根本办法。 造成此次生产事故的首要原因就是片键选择上的问题,由于片键选择失误,在数据量级不大的时候数据看起来还是很健康的,但随着数据量的暴涨,问题就慢慢浮出了水面,我们使用的组合片键并不是无规律的,片键内容是线性增长的,这就导致了数据的...转载 2019-12-07 10:33:29 · 828 阅读 · 1 评论 -
数据量很大,分页查询很慢,怎么破?
在公众号(架构师社区)上,看到一个SQL调优的测试,分享一下:https://www.cnblogs.com/youyoui/p/7851007.html 1,准备工作 2,一般分页查询 3,使用子查询优化 4,使用 id 限定优化 5,使用临时表优化 6,关于数据表的id说明当需要从数据库查询的表有上万条记录的时候,一次性查询所...转载 2019-07-22 15:10:46 · 1868 阅读 · 1 评论 -
记住,永远不要在MySQL中使用“utf8”
今天看微信公众号(纯洁的微笑)上的一篇推荐文章,分享出来给大家看看。最近我遇到了一个 bug,我试着通过 Rails 在以“utf8”编码的 MariaDB 中保存一个 UTF-8 字符串,然后出现了一个离奇的错误:我用的是 UTF-8 编码的客户端,服务器也是 UTF-8 编码的,数据库也是,就连要保存的这个字符串“ <…”也是合法的 UTF-8。问题的症结在于,MySQL...转载 2019-07-19 10:47:19 · 224 阅读 · 1 评论 -
1.3 spring boot整合presto
首先自己创建springboot工程,做好基本引用;下面只介绍满足presto的引用引用pom文件:<dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId>...原创 2019-07-05 08:38:19 · 5064 阅读 · 1 评论 -
1.2 presto实现连接mongodb
1,首先检查plugin文件,是否支持mongodb(版本:presto-server-0.221.tar.gz)2,在etc/catalog下创建mongodb.propertiesconnector.name=mongodbmongodb.seeds=192.168.227.3:27017mongodb.schema-collection=admin3,重启pre...原创 2019-07-05 08:35:43 · 3775 阅读 · 3 评论 -
1.1 presto实现多数据源混合查询
1.说明1.1PrestoDB是facebook开源的支持多数据源混合查询的一个计算引擎,他的最大特点:1.查询速度快 2.支持多数据源在一条SQL语句中混合查询 3.基于内存的查询。本文主要说明将不同数据源配置进PrestoDB中,使他实现多数据源查询。现在以:Greenpluml和Mysql这2种数据源为例。2.Mysql数据源2.1进入Presto的安装目录:cd /o...原创 2019-07-04 14:24:24 · 8154 阅读 · 0 评论 -
1.0 presto的安装与部署对接kafka,MySQL
Preston 官网:http://prestodb.io/一 安装环境JDK 版本:1.8ps: 本测试将presto的coordinator和worker都部署在一个节点上。二 安装Presto2.1 下载presto(版本0.221)压缩包并解压下载地址:https://prestodb.github.io/download.html下载最...原创 2019-07-04 10:51:53 · 1042 阅读 · 2 评论 -
3.0 linux实现mysql数据库每天自动备份定时备份
1,创建备份目录cd /homemkdir backupcd backup2,创建备份shell脚本注意把以下命令中的DatabaseName换为实际的数据库名称;当然,你也可以使用其实的命名规则!vim bkDatabaseName.sh#!/bin/bashmysqldump -uusername -ppassword DatabaseName > /...原创 2019-03-08 10:06:02 · 276 阅读 · 0 评论 -
2.0 Mycat实现MySQL的分库分表、读写分离、主从复制
Mycat及MySQL实例部署情况:Mycat(版本:5.6.29):IP:192.168.227.6,Port:3310/3311MySQL(版本:5.6.29) :注意MySQL版本最好5,6以上,刚开始yum安装默认版本5.1.73版本总报错userHost1,IP:192.168.227.3,Port:3306userHost2,IP:192.168.227.4,Por...原创 2019-03-07 09:12:11 · 1977 阅读 · 0 评论 -
1.0 Mycat实现MySQL的分库分表
Mycat及MySQL实例部署情况:Mycat(版本:5.6.29):IP:192.168.227.6,Port:3310/3311MySQL(版本:5.6.29) :注意MySQL版本最好5,6以上,刚开始yum安装默认版本5.1.73版本总报错userHost1,IP:192.168.227.3,Port:3306userHost2,IP:192.168.227.4,Por...原创 2019-03-06 11:07:25 · 315 阅读 · 0 评论 -
7.5 redis总结
RedisNoSQL Not Only SQL存储 内存有数据库的概念,默认16个数据库没有表的概念,直接key value类型:String 字符串 数字 BitMap--set--get--mset--mget--incr incrBy incrByFloat--desc descBy--setBit--getBit--bitCountList 有序--lPush RPush --LPOP R...原创 2018-06-29 10:14:38 · 190 阅读 · 0 评论 -
7.4 redis集群
集群分类主从复制 Replication 高可用 Sentinel 集群 Cluster 分布式 twemproxy主从复制 Replication:一个Redis服务可以有多个该服务的复制品,这个Redis服务称为Master,其他复制品称 为Slaves 只要网络连接正常,Master会一直将自己的数据更新同步给Slaves,保持主从同步 只有Master可以执行写命令,Slaves只能执行读...原创 2018-06-29 10:13:46 · 214 阅读 · 0 评论 -
8.4 Python和MongoDB
Mongo是一个非关系型数据库(NOSQL):有库的概念没表的概念,文档级数据库Mongo数据库Linux安装:1,上传到linux2,tar -zxvf mongodb-linux-x86_64-2.6.9.tgz解压3,进入解压文件夹/bin目录下4,mkdir mongodata 创建数据文件夹5,./mongod --dbpath ./mongodata 启动mongoDB6,...原创 2018-07-09 09:46:20 · 202 阅读 · 0 评论 -
mysql实现读写分离的原理
主库记录二进制日志。在每次准备提交事务完成数据更新前,主库将数据更新的事件记录到二进制日志中。MySQL会按事务提交的顺序而非每条语句的执行顺序来记录二进制日志。在记录二进制日志后,主库会告诉存储引擎可以提交事务了。下一步,备库将主库的二进制日志复制到其本地的中继日志中。首先,备库会启动一个工作线程,称为I/O线程,I/O线程跟主库建立一个普通的客户端连接,然后在主库启动一个特殊的二进制转储线程,...转载 2018-05-31 08:37:29 · 3487 阅读 · 0 评论 -
MySQL-性能优化-索引和查询优化
MySQL-性能优化-索引和查询优化要知道为什么使用索引,要知道如何去使用好索引,使自己的查询达到最优性能,需要先了解索引的数据结构和磁盘的存取原理参考博客:MySQL索引背后的数据结构及算法原理如上这篇博客写的挺好,我就不再造轮子了,对如上博客,我总结如下几个重要的要点:1. 不使用顺序查找,因为顺序查找比较慢,通过特定数据结构的特点来提升查询速度,这种数据结构就是可以理解成索引。2. 索引一般...转载 2018-06-06 08:50:22 · 170 阅读 · 0 评论