自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(116)
  • 资源 (1)
  • 收藏
  • 关注

原创 使用binlog2sql来恢复mysql误删除数据

原因是没有'root'@'127.0.0.1'用户。3.[mysql用户执行]2.[root用户执行]1.首先删除6行数据。

2025-02-28 16:22:16 383

原创 xtrabackup备份恢复Mysql数据库

我们把/data/mysql/data目录下所有的文件删掉,然后恢复--move-back --copy-back分别是移动回和COPY回。--ftwrl-wait-timeout=60 如果表上有超过5秒的大事务,会等待60秒,60秒后报错。xtrabackup是物理备份,会备份data目录里的所有文件,但是不会备份/log里的文件。报错:/data/mysql/log/bin/mysql-bin.000003这个文件已存在。删掉/data/mysql/log/bin/目录下所有的文件重新恢复,成功!

2025-02-28 13:57:45 1014

原创 达梦数据库如何收集表和索引的统计信息

这个时候需要看来得拆分粒度,按列、索引来收集了。回滚记录版本太旧,无法获取用户记录。总共1个语句正依次执行...

2025-02-28 10:15:44 499

原创 达梦数据库如何看执行计划,实际执行计划和实际返回值,以及统计信息

说明:CSCN2是CLUSTER INDEX SCAN的缩写即通过聚集索引扫描全表,全表扫描是最简单的查询,如果没有选择谓词,或者没有索引可以利用,则系统一般只能做全表扫描。但是发现预估的返回行数是不对的,还可以打开MONITOR_SQL_EXEC这个seesion参数,看实际的返回行数,->箭头后面就是实际的返回行数。说明:用于没有group by的count,sum,age,max,min等聚集函数的计算。说明:SSEK2是二级索引扫描即先扫描索引,再通过主键、聚集索引、ROWID等信息去扫描表;

2025-02-26 15:30:23 757

原创 mysql逻辑备份 mysqldump和mydumper实践

mysqldump -uroot -p'Passw0rd*' testdb1 --single-transaction --set-gtid-purged=off > 1.sql 注意:--single-transaction不会锁表,如果。不加这个参数会在全表上加S锁,不允许更新和删除,还有--set-gtid-purged=off,这两个参数生产环境一定要加上。--trx-consistency-only 代表本次备份只对事务表做一致性保证。用source或者不用登录导入数据。

2025-02-25 14:21:51 705

原创 mysql如何看bufferpool的命中率

缓冲池命中率= Innodb_buffer_pool_read_requests/(Innodb_buffer_pool_read_requests+Innodb_buffer_pool_reads+Innodb_buffer_pool_read_ahead)= 1497697965/(1497697965+ 1227641+ 839015)=99.85%平均读取的字节数= Innodb_data_read/ Innodb_data_reads=16376。可以看出系统的内存使用效率还是很高的。

2025-02-18 10:59:13 433

原创 磁盘性能排查

一般会重点关注 %iowait 和 %idle,分别表示 CPU 等待 IO 完成时间的百分比和 CPU 空闲时间百分比。响应时间 指 I/O 请求从发出到收到响应的间隔时间 r_await+w_await。如果两个值都比较高,则有可能 CPU 在等待分配内存,瓶颈在内存,此时应该加大内存;吞吐量 每秒的 I/O 请求大小 rkB/s+wkB/s。IOPS 是指每秒的 I/O 请求数 r/s+ w/s。使用率 磁盘处理 I/O 的时间百分比 %util。

2025-02-17 17:07:23 260

原创 mysqldump导出部分数据必须加--set-gtid-purged=off参数

解决的问题一:如果导入的主库实例已经存在了gtid全局事务标识符,那么导出开启gtid的实例时就必须加上--set-gtid-purged=OFF,因为不加的话直接导出的SQL文件中会有设置SET @@GLOBAL.GTID_PURGED这行,就会导致报错:GTID_PURGED can only be set when GTID_EXECUTED is empty。3.当时数据导入后,后续已经有新的数据进来了,如果使用root重新导入,新的数据就会被删掉了。4.如果使用root执行,主从数据将不一致。

2025-02-17 11:19:25 391

原创 mysql开启gtid并配置主从

/如果用户已存在,会改密码,如果不存在会直接创建这个用户,所以不需要create user单独创建用户。1.主从都在/etc/my.cnf中加入并重启服务。2.在从库10.153.35.5中执行。默认主从都开启了bin log.2.在主库创建用户并授权。3.在从库开启复制线程。3.在从库开启复制线程。

2025-02-14 15:30:22 324

原创 mysql 参数max_connect_errors研究

1.在server端设置max_connect_errors=3,超过3次连接错误就block。正常的mysql -h 10.153.35.2 -u root -p输入密码也被 block了。2.在客户端10.153.56.25连接server,不输入密码四次,第五次依旧连接上了。6.解决办法就是在server端执行flush hosts;可以看到10.153.56.25这个client又可以连接了。3.在server端看到10.153.56.25。5.server端可以看到。

2025-02-13 14:38:50 1056

原创 mysql临时表之tmp_table_size、 max_heap_table_size

tmp_table_size是内存临时表的最大值,max_heap_table_size是内存临时表的最大行数值。当执行的sql语句生成的临时表数量超过了最大值限制,就会将临时表储存在磁盘中。mysql用于储存中间结果的表称之为临时表,一般由复杂的sql语句执行时所创建。查看内存临时表的最大限制:(默认是16+M)一种是内存临时表,一种是磁盘临时表。4、from中的子查询。

2025-02-11 11:09:31 491

原创 DB2和mysql关于表和索引是否需要reorg的研究

DB2有个reorgchk的命令,是从SYSSTAT.TABLES和syscat.indexes这两个系统表中查表和索引的信息,并给出是否需要reorg表和索引的建议。> FPAGES, --表所占页面数量,包含删除记录后的空页面。> NPAGES, --含有记录的页面数量。> AVGROWSIZE --平均记录宽度。> OVERFLOW, --溢出记录数量。> CARD, --记录数量。

2025-02-06 13:36:08 424

原创 sql优化之加别名

可以看到test1在加别名前不会用到主键索引,而加了后就会用到,是什么原因呢?

2025-02-05 10:44:01 363

原创 group by,sum(),having count(*),case when探究

这种情况下往往需要把having count(*)= sum()里的过滤条件写到where里,因为having count(*)= sum()里面的sql不会走索引。下面这个sql having count(*)= sum 实际是把count(*)中的所有数据又都过滤了一遍,组里面所有数据满足条件才会显出分组。

2025-01-31 10:50:43 297

原创 MySQL LEFT JOIN在实际应用中的案例

MySQL的LEFT JOIN(左连接)是一种强大的查询工具,用于从两个或多个表中检索数据,并返回左表中的所有记录和右表中匹配的记录。当在实际应用中需要关联多个表,并希望保留左表中的所有记录,即使右表中没有匹配项时,LEFT JOIN就派上了用场。以一个电商网站的案例为例,假设我们有两个表:一个是用户表(users),存储用户的基本信息;2、where条件是在临时表生成好后,再对临时表进行过滤的条件。1、 on条件是在生成临时表时使用的条件,它不管on中的条件是否为真,都会返回左边表中的记录。

2025-01-23 14:14:18 713

原创 redis的监控

scan 0 #每次获取11个key,直到获取所有的key,编号从0开始,下一次获取时,按照提示的编号输入scan后的值。4)redis-cli -a redispwd info #查看redis的相关信息。3)redis-cli -a redispwd monitor #监控数据操作。2)redis-cli -a redispwd --stat #监控redis的状态。显示多少个key,内存占多少,客户端有多少,请求数是多少,连接数是多少。

2025-01-10 15:38:06 941

原创 redis设置密码

4.当然如果要密码常久生效,需要在配置文件里写入,否认下次redis重启后配置就会失效。3.远程登录发现和本机登录发现设置已生效,不输入密码可以连接,但是无法获取key值。3.重启redis,发现无法停下服务,原因是密码已生效,stop redis需要密码。安装这个网页的方法,在脚本里添加一行脚本即可。1.查看当前密码设置,默认没有设置密码。远程验证发现密码生效了。

2025-01-09 15:37:31 428

原创 python连接redis详细步骤

1.下载并安装windows python。

2024-12-09 17:38:56 539

原创 【GaussDB(DWS)】数据分布式存储-三种类型的表

2024-09-02 16:27:03 264

原创 sql学习 inner join,left join,right join

RIGHT JOIN(或 RIGHT OUTER JOIN)从右表返回所有的记录,即使左表中没有匹配。如果左表中没有匹配,则结果中左表的部分将是 NULL。LEFT JOIN(或 LEFT OUTER JOIN)从左表返回所有的记录,即使右表中没有匹配。如果右表中没有匹配,则结果中右表的部分将是 NULL。JOIN(或 INNER JOIN)只返回两个表中匹配的记录。

2024-09-02 16:15:39 424

原创 达梦数据库如何查询当前连接,历史慢sql,当前慢sql

当前连接数,按IP分组。

2024-08-23 10:47:24 2063 1

原创 PostgreSQL基本使用

这个目录是在安装时指定的,所以在安装时需要指定一个合适的目录作为数据目录的根目录,而且,每一个 PG 数据库实例都需要有这样的一个目录。数据库:一个 PostgreSQL 数据库服务下可以管理多个数据库,当应用连接到一个数据库时,一般只能访问这个数据库中的数据,而不能访问其他数据库中的内容默认情况下初始实例只有三个数据库: postgres、template0、template1。PostgreSQL 有一些术语与其他数据库中不一样,了解了这些术语的意思,就能更好地看懂PostgreSQL 中的文档。

2024-05-22 16:57:27 2082

原创 Linux系统安装PostgreSQL单机数据库

可以看到有各个版本的源码目录 选择13.12的版本,源码包提供另种打包压缩方式 分别为tar.bz2和 tar.gz。这里下载postgresql-13.12.tar.gz。之后出现源码目录 postgresql-13.12,包含的文件如下。默认时所有文件都将安装到/usr/local/pgsql。/usr/local/pgsql目录下的文件夹。通常使用postgres这个用户名。

2024-05-20 16:11:17 539 1

原创 达梦主机扩容(CPU和内存)规范

监视器启:分别登录监视器 ***.***.40.81/82/83 cd /data/dmdbms/bin 监视器停起:./DmMonitorServiceHIDC start。监视器停:分别登录监视器 ***.***.40.81/82/83 cd /data/dmdbms/bin 监视器停起:./DmMonitorServiceHIDC stop。达梦管理工具 ***.***.53.48,分别连接主备修改参数。达梦主:***.***.0.18 备***.***.0.26。

2023-11-23 18:30:08 433

原创 达梦数据库如何查看索引和表的DDL

1)查看索引DDL,先查看索引的objectID,再查询该objectid的DDL。

2023-11-20 17:17:26 4538

原创 达梦数据库集群修改初始化级别的系统参数步骤

查看当前参数:grep -i MAX_SESSIONS /data/dmdata/HIDC/dm.ini。停止顺序:1.监视器(dmmonitor) 2. 备主(dmwatcher)3.主备(dmserver)启动顺序:1.主备(dmserver)2.主备(dmwatcher) 3,监视器(dmmonitor)dmwatcher停起:./DmWatcherServiceTKOMS02 stop/start。dmserver停起: ./DmServiceTKOMS02 stop/start。

2023-11-13 14:11:11 329

原创 MySQL内存使用的监控开关和使用查看

CURRENT_NUMBER_OF_BYTES_USED:当前分配的内存大小,通过SUM_NUMBER_OF_BYTES_ALLOC-SUM_NUMBER_OF_BYTES_FREE计算得到。简单来说,就是可以根据用户、主机、线程、账号、全局的维度对内存进行监控。HIGH_NUMBER_OF_BYTES_USED:CURRENT_NUMBER_OF_BYTES_USED的最大值。LOW_NUMBER_OF_BYTES_USED:CURRENT_NUMBER_OF_BYTES_USED的最小值。

2023-10-30 15:37:40 791

原创 Redis主从同步原理

master执行bgsave后就去处理别的请求了,bgsave执行成功后会在serverCron中触发backgroundSaveDoneHandler,进而调用updateSlavesWaitingBgsave,它做的事情就是依次向所有复制状态为SLAVE_STATE_WAIT_BGSAVE_END的slave传输rdb文件。如果有级联的slave,需要断开连接,让他们重连;在准备阶段,slave发送psync指令后,就等待master的回复,当收到全量同步的回复后,开始执行全量同步流程。

2023-10-27 11:37:28 210

原创 当CDC总是找一个非常老的SCN号而无法启动预定时,如何重置日志点

目标端:获取预定名EBA3GRP的当前的bookmark。源端:转换bookmark到SCN号。源端:重置该预定的日志点SCN号。

2023-10-19 10:44:02 149

原创 redis一主一从搭建

主库:[redis@t3-dtpoc-dtpoc-web06 bin]$ ./redis-cli -p 6379。1.复制一份redis.conf并将6380都改成6379。3.登录从节点6380,并配置主从关系。2.启动从节点6380。

2023-10-18 17:17:14 417

原创 Redis持久化RDB和AOF测试

每个数据段页面的大小为4K,客户端要修改的数据在哪个页面中,就会复制一份这个页面到内存中,这个复制的过程称为"页面分离",在持久化过程中,随着分离出的页面越来越多,为了解决这些问题,Redis需要同时进行读写请求和持久化操作,这样又会导致另外的问题:持久化的过程中,内存中的数据还在改变,假如Redis正在进行持久化一个大的数据结构,还要负责周期性的把当前内存中的数据写到快照文件中RDB中,数据写到RDB文件是IO操作,IO操作会严重影响Redis的性能,甚至在持久化的过程中,读写请求会阻塞,

2023-10-13 15:54:33 258

原创 Redis参数规范详解

slave-serve-stale-data yes //默认值为yes。logfile "/home/redis/redis/redis_6379/logs/redis_6379.log" //日志文件,默认为空。pidfile "/home/redis/redis/redis_6379/logs/redis_6379.pid" //存储进程号的文件。dir "/home/redis/redis/redis_6379/data" //数据目录。

2023-10-10 11:29:23 252

原创 迪思杰复制软件DSG如何重刷表?如何将某表移动到其他复制队列?

TABLE_31 = (TABSCHEMA in ('TTWAB') and TABNAME in ('YXWAGECOUNTREPORT//删掉该表','LADXWAGEDATA_ESTIMATE')).REAL。先看dt配置的table_exists_full_do是什么值,FULL就是重刷时发现这个表不为空怎么处理,默认是truncate表也有可能是什么都不做none,如果是none就先手动truncate表。然后在其他队列里的配置文件里加上这个表重刷。然后删掉该表复制,然后重新配置复制。

2023-10-09 17:31:08 263

原创 java jedis连接redis数据库实战

原来是redis server端没有设置密码,把jedis.auth("123456");去掉重新编译执行,发现连接成功。3.编译java代码,发现报错。重新下载低版本的jar包jedis-2.9.0.jar 后编译通过。3.执行java文件,发现报错,4.写入数据并读取数据测试成功。2.编写java代码。

2023-10-09 16:44:53 281

原创 redis 6.0.5 linux详细安装步骤和测试

5.设置redis.conf配置文件,设置daemonize yes和protected-mode no。3.将redis-6.0.5.tar.gz上传到/home/redis,并使用redis用户解压。关闭redis server后再启动再启动客户端发现还是能查到read key值。安装redis,PREFIX=/home/redis/redis 设置安装目录。4.使用redis用户编译并安装redis。2.使用root创建redis用户和目录。使用redis用户创建redis目录。

2023-10-08 17:35:18 452

原创 Mysql主从复制之binlog_group_commit_sync_delay

slave并发复制就是MTS(multi thread slave)的初衷就是为了解决主库过于繁忙造成从库延时较大,不是为了解决表没有主键且全表更新或则全表删除引发的主从延时,感觉这个主从复制并发意义不是很大。的事务才能并发复制,组提交(group commit)是mysql处理日志的一种优化方式,主要为了解决写日志时频繁刷磁盘的问题。2binlog_group_commit_sync_no_delay_count 参数,表示累积多少次以后才调用 fsync。简而言之就是,只有同一。

2023-10-07 17:26:03 497

原创 shell脚本之连接mysql并监控数据库实战

bin/bash脚本测试:2。

2023-09-27 16:18:48 313

原创 shell脚本之连接DB2并监控数据库实战

窗口1:db2 +C "update COURSE set c_id=22 where c_id=20"窗口2:db2 "delete from course where c_id=22"制造锁等应用,然后执行监控脚本 sh moniotr.sh。可以看到锁等的信息和应用具体信息都已经捕获。

2023-09-27 14:09:36 729

原创 java jdbc连接mysql实战

2,将mysql-connector-java-5.1.47.jar放在JDK/lib目录下并设置环境变量。1.下载JDK和jar包。3.编写conn程序。

2023-09-27 10:34:38 616

原创 sql开发学习(1)之group by,left join

c.name1,t.id,t.name3FROMname1WHERE id>1LEFT JOINname3WHERE id>1表数据:查询结果:

2023-09-26 14:37:34 289

CentOS下SVN的安装

CentOS下SVN的安装,详细介绍了CentOS下SVN的步骤

2013-10-19

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除