第23期 使用redis-cli连接redis集群批量执
之前我给大家介绍了《使用使用redis-cli批量执行命令》https://blog.itpub.net/12798004/viewspace-3054147/当时是redis-cli连接的是单机版的redis,但是在很多企业中目前使用的都是集群模式。Redis Cluster,采用了去中心化的多主多从架构,以提高数据的可用性和伸缩性。这一架构使得Redis Cluster能够在保持高性能的同时,
第22期 MySQL延迟复制
1.MySQL 延迟复制简介在网络通信正常的情况下,通常 MySQL 复制很快,即时很快,但 MySQL 缺省的复制也会多少存在延迟的,并且用户无法缩短延迟时间,用户无法控制。另一方面,有时却需要特意增加复制的延迟。假设有这样一种场景,用户在主库上误删除了一个表,并且该操作很快被复制到从库。当用户发现这个错误时,从库早就完成了该事件重放,重放后从库上也把这个表删除了。此时主库、从库都没有那个被误删
第21期 MySQL半同步复制的主从库搭建
从MySQL5.5开始,MySQL以插件的形式支持半同步复制。什么是半同步复制?我们需要先了解一下异步复制和完全复制。1. 异步复制MySQL默认的复制方式就是异步复制。主库上执行完客户端提交的事务后,会立刻告诉客户端,事务已经提交。主库并不会关心从库是否已经接受或者应用该事务的事件,这样就会带来一个问题,假如主库出现故障了,主库上已经提交的事务很可能没有完全传到从库上,此时如果强行将从库提升为主
第20期 MySQL常规模式的主从搭建
MySQL主从数据库复制是基于binlog实现的。熟悉Oracle的朋友都知道,MySQL不是有redo log日志吗?为什么不使用redo log来实现复制呢?原因是MySQL数据库的redo log是存储引擎层的日志,如果不使用innodb作为MySQL数据库的存储引擎是无法实现复制的。 MySQL的redo log日志是innodb存储引擎所独有的,MySQL作为一
《大连公益讲师团》在美丽的滨海城市-大连成立了啦
2024年12月17日,《大连公益讲师团》在美丽的滨海城市-大连成立了啦。这里有一群执着于技术的人。这里有一群执着于教育的人。我们希望与你一起。站在时代的风口,让技术成就梦想。欢迎加入大连公益讲师团。加入《大连公益讲师团》有很多好处:1.人脉拓展加入专家圈与同行大牛交流技术,结交好友。2.提升技能通过线上,线下的活动,我们都能学到最前沿的技术,了解行业动态。3.为企业推荐人才我们可以为想找工作的,
第19期 使用SQL Loader工具从csv文件数据导入Oracle数据库中
在Oracle中,可以使用SQL Loader工具或外部表功能来导入CSV文件中的数据到数据库表中。以下是使用SQLLoader的一个基本示例和使用外部表的示例。使用SQL*Loader:1.首先我们有一个CSV文件(phb.csv),文件内容如下:梁圣红,居民身份证(户口薄),2102041966101****0,女,1966-10-14,医保个账,OB20***000178247,升级版,19
第18期 Oracle Data Guard Broker有什么新功能?
Data Guard Broker 是一个分布式的管理构架,可将 DG 系统中的主库和所有备库当做一个整体来实现集中自动化管理。用于自动化 Data Guard 配置的创建、维护、和监控。你能使用 Oracle Enterprise Manager 图形化用户界面(GUI)或 Data Guard 命令行界面(DGMGRL)来管理DG.Data Guard Broker是简化DG复杂的管理过程的一
第17期 Oracle通过触发器监控审计执行的ddl语句
如果要审计数据库中的DDL操作,在Oracle中,可以通过创建DDL触发器来监控和审计执行的DDL语句。我们可以在不同的层级上进行审计,比如在数据库级别,审计数据库上所有ddl操作,我们也可以在schema(这里是'YOUR_SCHEMA_NAME')上审计每个DDL操作。1.数据库级别DDL审计2.schema级别DDL审计以下是创建在schema级别DDL触发器的示例代码:CR
第16期 使用redis-cli批量执行命令
本文主要介绍如何使用redis-cli客户端批量执行命令。可以使用redis-cli执行多行命令,方便快捷地完成测试需求。背景信息在实际环境中,尤其是业务上线前,可能需要对系统进行大量的测试,其中一部分测试需要您对Redis数据做出各种修改。可以将需要批量执行的Redis命令写入一个.txt文件中,通过redis-cli批量执行该文件中的命令,实现小规模或者临时的数据修改与测试。前提条件1.至少有
第15期Oracle调用DBMS_JOB.SUBMIT报错:ORA-27486:权限不足
Oracle调用DBMS_JOB.SUBMIT包创建一个job时报错:ORA-27486:权限不足报错场景创建了一个存储过程,调用了SYS.DBMS_SCHEDULER.CREATE_JOB报错:ORA-27486:权限不足问题原因当前执行存储过程的用户没有创建job的权限解决方案登陆管理员权限给用户赋予创建job的权限赋权语句SQL> GRANT CREATE 
第14期 Oracle 大表添加索引的最佳方式
大家好,我是酋长彭,我又来和大家分享数据库知识了,这次是和大家分享的是,如何在大表上在不影响业务的情况下,给表新增索引,大家知道如果操作不当,有可能会把数据库夯死。背景: 业务系统中现在经常存在上亿数据的大表,在这样的大表上新建索引,是一个较为耗时的操作,特别是在生产环境的系统中,添加不当,有可能造成业务表锁表,业务表长时间的停服势必会影响正常业务的开
第13期 MySQL如何定期把一个表数据备份到另一个表
在MySQL中,定期将一个表的数据备份到另一个表,可以通过创建一个定期执行的事件(Event)来实现。首先,确保你的MySQL服务器已经开启了事件调度器。然后,你可以创建一个事件,定期将源表的数据插入到备份表中。例如,如果你想每天凌晨备份source_table到backup_table,可以使用如下SQL语句:CREATE EVENT backup_eventON SC
第12期 Oracle12.2 引发 SQL 不能共享进而造成 Cursor Mutex: x
今天有一个朋友说公司安装使用的是Oracle12.2 ,发现一直存在enq: TX - row lock contention事件,出现cursor: mutex X、cursor: mutex S、cursor: pin S wait on X 这类等待事件。查询oracle资料,发现是由于Oracle12.2 未公开的 bug 导致的由于 Bind_equiv_failure 引发
第11期 如何确定一个SQL语句的SQL_ID?
本文档介绍了如何使用V$SQL视图、AWR & ASH数据或关联视图的数据字典查询来确定SQL语句关联文本的SQL_ID。如何确定一个SQL语句的SQL_ID?语句的SQL_ID可以在AWR或ASH报告中找到,或者使用V$SQL视图从数据库数据字典中找到。如果SQL可以用一个特定的可识别的字符串或某种独特的注释来识别,如:/* TARGET SQL */,那么这将使其更容易被找到。比如:S
第10期 ADG灾备库自动删除归档日志
我们在搭建完ADG灾备库后,我们经常会遇到归档日志满的预警信息,那么备库的归档日志是怎么删除的?怎么管理的?搭建过dg的同学肯定非常清楚归档日志和备份的重要性,这些归档日志从主库传输到备库,在备库被应用apply。思考一个问题:主库的归档日志是怎么管理呢,备库的归档日志又该怎么管理呢?首先说一下日志的重要性, 归档日志是非常重要的,备份恢复需要它,而Data Guard也需要它。不能够随意手动删除
第9期 ADG库 FOREIGN ARCHIVED LOG占用过大
今天早晨一个ADG的灾备库预警。提示闪回恢复区占用了97%以上的空间。登陆服务器查询V$RECOVERY_AREA_USAGE的时候,发现foreign archived log 占用的空间较多。SQL> select * from v$recovery_area_usage; FILE_TYPE &
第8期 expdp ORA-31693 ORA-02354 ORA-01555
在做数据库迁移时,使用expdp导出数据库时,如果数据库表比较大,数据变更比较频繁,在导出时经常会遇到如下的错误。Export: Release 19.0.0.0.0 - Production on Sat Aug 3 21:00:01 2024Version 19.9.0.0.0Copyright (c) 1982, 2019, Oracle and/or its affiliates.&nbs
第7期 关于MySQL数据库内存分配讲解
今天和大家MySQL数据库内存分配的问题,数据库 MySQL 的内存是重要的性能参数,常出现由异常 SQL 请求以及待优化的数据库导致的内存利用率升高的情况,严重时还会出现由于 OOM 导致实例发生 HA 切换,影响业务的稳定及可用性。MySQL 的内存大体可以分为 global 级的共享内存和 session 级的私有内存两部分,共享内存是实例创建时即分配的内存空间,并且是所有连接共享的。私有内
第6期 MySQL数据库内存使用率过高
现象描述数据库 MySQL 出现内存突增,内存持续增长不释放的情况。具体表现在实例监控的内存利用率监控图表中,如下图所示:在突增之后,或者长期缓慢增长的过程中,最终达到一个过高的水平(>96%),且在一定范围内小幅度变动,有可能会经常性的触发自定义的可观测平台内存告警。故障风险低效的 SQL 语句或数据库参数设置不当都可能会导致内存利用率升高,若您使用的是云数据库 MySQL 双节点、三节点
第5期 Oracle Linux 7和8如何禁用Transparent HugePages
随着计算机科技的不断发展,安全问题越来越受到关注,其中内存管理安全也越来越被关注。在这个背景下,Oracle数据库针对透明大页(Transparent Huge Pages, THP)的问题进行了一系列的改进和研究,关闭透明大页,实现安全内存管理。透明大页是一个为Linux设计的内存管理技术,旨在提高系统性能和内存利用率。它通过把内存分为更大的块,减少了内存碎片,提高了访问效率。但同时,透明大页也