数据库
文章平均质量分 68
数据库
帅大大的架构之路
坚持!努力!奋斗!
展开
-
Mysql索引
官方介绍索引是帮助MySQL高效获取数据的数据结构。更通俗的说,数据库索引好比是一本书前面的目录,能加快数据库的查询速度。一般来说索引本身也很大,不可能全部存储在内存中,因此索引往往是存储在磁盘上的文件中的(可能存储在单独的索引文件中,也可能和数据一起存储在数据文件中)。我们通常所说的索引,包括聚集索引、覆盖索引、组合索引、前缀索引、唯一索引等,没有特别说明,默认都是使用B+树结构组织(多路搜索树,并不一定是二叉的)的索引。看到这里,你是不是对于自己的sql语句里面的索引的有了更多优化想法呢。转载 2023-11-07 11:34:49 · 235 阅读 · 0 评论 -
docker部署MongoDB单机多节点集群
官方英文。转载 2023-10-30 10:49:04 · 274 阅读 · 0 评论 -
VictoriaMetrics
VictoriaMetrics,是一个快速高效、经济并且可扩展的监控解决方案和时序数据库。谈到VictoriaMetrics就必须要提到Prometheus,VictoriaMetrics是一个新兴的监控解决方案。它借助Prometheus强大的exporter生态、成熟的规范、服务发现等优点等,融入到Prometheus生态中。VictoriaMetrics官网很多兼容Prometheus参数解释都是直接跳转到Prometheus官网。转载 2023-05-25 11:32:15 · 2160 阅读 · 0 评论 -
InfluxDB详解
InfluxDB是一个由InfluxData开发的开源时序型数据。它由Go写成,着力于高性能地查询与存储时序型数据。InfluxDB被广泛应用于存储系统的监控数据,IoT行业的实时数据等场景。Time Series (时间序列):你可以使用与时间有关的相关函数(如最大,最小,求和等)Metrics(度量):你可以实时对大量数据进行计算Eevents(事件):它支持任意的事件数据特点为时间序列数据专门编写的自定义高性能数据存储。TSM引擎具有高性能的写入和数据压缩。转载 2023-05-22 11:12:31 · 3848 阅读 · 0 评论 -
时序数据库InfluxDB介绍
数据特点:数据量大,数据随着时间增长,相同维度重复取值,指标平滑变化(某辆车的某个设备上传上来平滑变化的轨迹坐标)。写入特点:高并发写入,且不会更新(轨迹不会更新)【基本上都是插入,没有更新的需求】。查询特点:按不同维度对指标进行统计分析,存在明显的冷热数据,一般只会查询近期数据(一般我们只会关心近期的轨迹数据)。数据基本上都有时间属性,随着时间的推移不断产生新的数据。数据量大,每秒钟需要写入千万、上亿条数据。转载 2023-05-22 10:38:20 · 951 阅读 · 0 评论 -
show global status各项指标说明
实际上,MySQL 会用另一个临时文件来存再次排序的结果,所以通常会看到 Sort_merge_passes 增加的数值是建临时文件数的两倍。在mysql默认安装情况下,table_cache的值在2G内存以下的机器中的值默认时256到512,如果机器有4G内存,则默认这个值是2048,但这决意味着机器内存越大,这个值应该越大,因为table_cache加大后,使得mysql对SQL响应的速度更快了,不可避免的会产生更多的死锁(dead lock),这样反而使得数据库整个一套操作慢了下来,严重影响性能。转载 2023-05-05 11:38:09 · 840 阅读 · 0 评论 -
centos7安装mysql5.7(rpm安装版)与 MySQL5.7glibc版Linux安装
lower_case_table_names=1 #配置表名不区分大小写 1:不区分大小写 0:区分大小写 这行必须配置 默认表名是区分大小写的,不利于开发。到这其实mysql已经安装和配置好,但是centos7的开了防火墙,外面还是访问不到mysql的,所以还要开端口3306(或者把防火墙关掉也行,生产环境勿用)rpm的mysql包,安装起来简单,解压版的mysql还需要做许多配置,稍有不慎就会出错!(输入y回车,下载并安装即可。出现下面这个death就是没有启动,新装的第一次是没有启动的。转载 2023-04-21 15:13:13 · 803 阅读 · 0 评论 -
postgresql常用操作
备份db数据里指定的表。转载 2023-03-03 15:26:54 · 584 阅读 · 0 评论 -
什么是乐观锁,什么是悲观锁
原文当程序中可能出现并发的情况时,就需要保证在并发情况下数据的准确性,以此确保当前用户和其他用户一起操作时,所得到的结果和他单独操作时的结果是一样的。这就叫做并发控制。并发控制的目的是保证一个用户的工作不会对另一个用户的工作产生不合理的影响。没有做好并发控制,就可能导致脏读、幻读和不可重复读等问题。常说的并发控制,一般都和数据库管理系统(DBMS)有关。在 DBMS 中并发控制的任务,是确保多个事务同时增删改查同一数据时,不破坏事务的隔离性、一致性和数据库的统一性。无论是悲观锁还是乐观锁,都是人们定义出来转载 2022-06-24 16:30:17 · 244 阅读 · 0 评论 -
canal-server使用
canal-server一直无法启动, 查看日志显示 admin:auth error原因: canal-server配置的参数, 账号密码使用错误(使用了canal-admin ui的登录账号和密码)部署的admin当天登录正常, 隔天登录后台就显示 network error原因: 使用启动canal-admin, 其限定了容器的内存为1G(参数 -m 1024), 因此服务启动后内存过大导致服务自动关闭.原创 2022-11-29 15:58:21 · 3662 阅读 · 0 评论 -
MySQL错误-this is incompatible with sql_mode=only_full_group_by完美解决方案
SELECT列表的表达式#1不在GROUP BY子句中,并且包含非聚合列’test.t_iov_help_feedback.ID’,它在功能上不依赖于GROUP BY子句中的列;这与sql_mode = only_full_group_by不兼容”mysql 5.7.5版本以上默认的sql配置是:sql_mode=“ONLY_FULL_GROUP_BY”,这个配置严格执行了"SQL92标准"。由于开启了ONLY_FULL_GROUP_BY的设置,如果select 的字段不在 group by 中,转载 2022-10-24 09:20:14 · 5166 阅读 · 0 评论 -
mysql七个join
A的独有+AB的公有B的独有+AB的公有AB的公有A的独有B的独有A的独有+B的独有+AB的公有A的独有+B的独有。转载 2022-10-24 09:02:13 · 214 阅读 · 0 评论 -
redis常用操作
1.批量清理某些数据,看到 (integer) 1说明清理成功, (integer) 0则是清理失败或没有数据。2.查看某个key的过期时间,返回值就是过期时间,负数就是没有过期时间。3.查看某个key的值。原创 2022-10-12 15:03:46 · 175 阅读 · 0 评论 -
Mysql 查看死锁,解除死锁
2.查询进程(如果您有SUPER权限,您可以看到所有线程。否则,您只能看到您自己的线程)2.杀死进程id(就是上面命令的trx_mysql_thread_id列)3.杀死进程id(就是上面命令的id列)2:查看当前锁定的事务。3:查看当前等锁的事务。1.查看下在锁的事务。转载 2022-09-23 11:09:11 · 4683 阅读 · 0 评论 -
mysql8设置sql_mode
在mysqlld下添加sql-mode。在mysql配置文件下设置。转载 2022-09-21 10:59:53 · 2642 阅读 · 0 评论 -
mysql查询日志存放位置
5、日志查看,因为是二进制文件没法用vi等打开,可以用mysql的mysqlbinlog打开,/usr/bin/mysqlbinlog /home/logs/mysql-bin.000001,当然每个人路径可能不一样,这个只能自己去找了。配置自动清理在my.cnf文件中,这个文件路径不知道的话执行mysql --help | grep ‘Default options‘ -A 1,就会列出文件的路径来。修改配置文件,vi /etc/my.cnf,找到log-bin的部分。下面列几个常用的命令。转载 2022-09-16 14:08:10 · 6436 阅读 · 0 评论 -
oracle修改最大连接数
步骤四:查看数据库设置的最大连接数和最大session数量,show parameter processes命令查看的是汇总的信息,也可以直接select value from v$parameter where name =‘processes’;步骤八:可以用如下命令查看数据库连接的消耗情况:select b.MACHINE, b.PROGRAM, b.USERNAME, count(*) from v。步骤七:步骤重启后再次查看,已经生效。步骤二:查看当前数据库进程的连接数。转载 2022-08-19 11:24:08 · 9017 阅读 · 0 评论 -
本地电脑通过ssh通道登录内网mysql
很多时候mysql端口只对内网服务器开通,电脑本地连接不了,可通过如下方法,使用ssh代理连接ssh -CfNg -L 6333:172.16.3.2:3306 root@1.1.1.1将上述命令写成shell脚本,并做好免密登录(root@1.1.1.1)说明:6333:电脑本地监听的端口172.16.32.12:3306 mysql服务器的内网ip和端口root@1.1.1.1 开放了ssh外网访问,并且能以内网登录mysql的服务器使用:每次要本地连接mysql的时候执行上述s原创 2022-03-05 15:00:41 · 1258 阅读 · 0 评论 -
docker部署redis集群
Redis Cluster采用无中心结构,每个节点保存数据和整个集群状态,每个节点都和其他所有节点连接。Redis Cluster提供了一种运行Redis安装的方法,在该安装中,数据会 在多个Redis节点之间自动分片。Redis Cluster 在分区期间还提供了一定程度的可用性,这实际上是在某些节点出现故障或无法通信时继续操作的能力。但是,如果发生较大故障(例如,大多数主服务器不可用时),集群将停止运行。Redis Cluster自动分割在多个节点之间的数据集,一部分节点出现故障或无法与集群的其余部分原创 2022-01-21 15:35:41 · 826 阅读 · 0 评论 -
binlog日志转化为可读sql文件
mysqlbinlog --no-defaults --database=dbName --base64-output=decode-rows aaa_binlog_mysqlbin.002530 > 30.sql原创 2021-12-29 09:32:02 · 1497 阅读 · 0 评论 -
cloudcanal 安装部署
安装步骤(参考官方文档)下载安装包cloudcanal社区办安装包已经正式开放下载!!!阿里云 OSS 下载最新版本:https://cloudcanal-community.oss-cn-hangzhou.aliyuncs.com/latest/cloudcanal.7z环境准备部署cloudcanal会使用8111、9090、55000、25000、55005这几个端口,请保证其他应用不要占用这些端口。控制台访问请使用chrome浏览器,其他浏览器没有经过验证。规格建议操作系统: Ub原创 2021-08-31 11:44:09 · 4801 阅读 · 0 评论 -
canal 同步mysql指定表到mysql
canal部署192.168.146.128部署canal服务端部署mysqlmkdir -p /data/mysql/conf/cd /data/mysql/conf/vim my.cnf[mysqld]log_bin=master-binlogbinlog_format=ROWserver-id=1sync-binlog=1expire_logs_days=1log_slave_updates=1docker run -itd -p 3306:3306 --priv原创 2021-04-20 16:34:47 · 4076 阅读 · 8 评论 -
gtid部署mysql主从复制
gtid原理:1.当一个事务在主库端执行并提交时,产生GTID,一同记录到binlog日志中;2.binlog传输到slave,并存储到slave的relaylog后,读取这个GTID的这个值设置gtid_next变量,即告诉Slave,下一个要执行的GTID值;3.sql线程从relay log中获取GTID,然后对比slave端的binlog是否有该GTID;4.如果有记录,说明该GT...原创 2019-02-28 19:59:37 · 207 阅读 · 0 评论 -
yum安装mysql8.0时候,初始化报错
报错日志如下:2019-08-16T06:10:30.156632Z 0 [ERROR] [MY-010338] [Server] Can't find error-message file '/soft/src/mysql/mysql8/share/mysql-8.0/errmsg.sys'. Check error-message file location and 'lc-messages...原创 2019-08-16 14:33:11 · 3838 阅读 · 0 评论 -
mysql8.0遇到的密码问题
安装完8.0之后,登录的时候报错了[root@localhost ~]# mysql -uroot -P 3303 -pEnter password: ERROR 2059 (HY000): Authentication plugin 'caching_sha2_password' cannot be loaded: /usr/local/mysql/lib/plugin/caching_s...原创 2019-08-15 14:04:07 · 278 阅读 · 0 评论 -
Proxy实现mysql读写分离
1. mysql实现读写分离的方式mysql 实现读写分离的方式有以下几种:程序修改mysql操作,直接和数据库通信,简单快捷的读写分离和随机的方式实现的负载均衡,权限独立分配,需要开发人员协助。amoeba,直接实现读写分离和负载均衡,不用修改代码,有很灵活的数据解决方案,自己分配账户,和后端数据库权限管理独立,权限处理不够灵活。mysql-proxy,直接实现读写分离和负载均衡,不用...原创 2019-03-13 15:44:45 · 606 阅读 · 0 评论 -
mysql主从配置和从库zabbix监控
Mysql的主从架构模式,是很多企业广泛使用,并且大家所广为熟知的一种架构模式mysql主从复制主要用途实时灾备,用于故障切换读写分离,提供查询服务备份,避免影响业务mysql主从复制存在的问题主库宕机后, 数据可能丢失主库写压力大, 复制可能会延时主从复制原理主从复制步骤:主库将所有的写操作记录到binlog日志中并生成一个log dump线程,将binlog日...原创 2019-02-27 22:01:03 · 333 阅读 · 0 评论 -
MySQL备份
环境:Redhat7.4,mysql5.71.mysql配置文件mysql的配置文件为/etc/my.cnf配置文件查找次序:若在多个配置文件中均有设定,则最后找到的最终生效/etc/my.cnf --> /etc/mysql/my.cnf --> --default-extra-file=/PATH/TO/CONF_FILE --> ~/.my.cnfmysql常用...原创 2019-02-21 21:21:56 · 383 阅读 · 0 评论 -
Mysql基础
需求:1.搭建mysql服务2.创建一个以你名字为名的数据库,并创建一张表student,该表包含三个字段(id,name,age),表结构如下:mysql> desc student;+-------+--------------+------+-----+---------+-------+| Field | Type | Null | Key | Defaul...原创 2019-01-18 08:32:09 · 467 阅读 · 0 评论