Oracle:ORA-39405——时区文件升级
异常正常情况下,数据泵导入是可以跨版本的,但是此处却出现了异常[oracle@prdeamdb OPatch]$ impdp \'/ as sysdba\' directory=ORACLE_BASE DUMPFILE=eam20240715.dmp Import: Release 19
DBA——从业十多年,聊聊现状,也希望改变一些东西
面试:35 岁的焦虑35 岁危机的源头我不做追溯,但从个人角度和社会现象,作为 HR、以及很多领导层其实没人真正的想过这个事情,所以造成了这样的结果年龄角度缺点:35+ 岁以后就会深深的感受到卷不动,真的卷不动;不只是身体疲惫,更多的主要是来源于精神层面的,需要醒神回蓝35+ 岁的人过于滑头,很难被 PUA,不容易管理优点: 35+ 岁的工程师,经过多年经验上的积累,并不是了解新兴技术,
OGG 23c:安装
配置创建用户(源 & 目标)描述该用户必须加入到 oinstall 组该用户使用与 oracle 相同的 profile 文件操作系统必须为该用户开放一定的 CPU、内存等资源限制,可以通过 ulimit –a 查看,建议在 /etc/security/limits.conf 中设置和 oracle 用户一致操作创建 GoldenGate 操作系统用户(此步骤非必须,也可以使用 ORACL
如何为 MySQL 提 Bug
需知基本要素你做了什么,你希望发生什么,以及实际发生了什么。这是 bug 报告的三个基本元素。你需要准确地告诉他们你做了什么(例如,“我的程序运行查询 SELECT * FROM happy_meals WHERE sandwich = ‘hamburger’ AND side = ‘onion rings’),你期望发生什么(继续这个例子,“我期望 MySQL 返回一个包含 hamburger
MySQL:关于 RR 的一些实验及拓展(三)
疑问我们一行行加 X+Gap 锁,那没加行锁时数据会不会产生影响?还是先加表锁,等对所有行加 X+Gap锁后再释放表锁?实验为了验证,我将存储过程改了一下,让其处理大数据量操作,然后再进行实验实验一确定表锁的样子确认隔离级别mysql> show variables like '%iso%'; +-------------------
MySQL:关于RR的一些实验及拓展(二)
从简单的增删改查角度,了解了一下锁,那么从视图角度是怎样的呢?概念锁的类型共享锁(S Lock):允许拥有共享锁的事务读取该行行数据。 当一个事务拥有一行的共享锁时,另外的事务可以在同一行数据也获得共享锁, 但另外的事务无法获得同一行数据上的排他锁排他锁(X Lock):允许拥有排它锁的事务修改或删除该行数据。 当一个事务拥有一行的排他锁时, 另外的事务在此行数据上无法获得共享锁和排它锁,只能等待
MySQL:关于RR的一些实验及拓展
最近收到了很多大佬的讨论,我大概研究了一下。相关概念锁相关问题脏读:一个事务可以读到另一个事务中未提交的数据不可重复读:在一个事务没有结束时,另外一个事务也访问该同一数据集合,并做了 DML 操作。因此,在第一个事务两次读数据之间,读到的数据可能是不一样的幻读(丢失更新):一个事务的更新操作会被另一个事务的更新操作所覆盖,从而导致数据的不一致。虚读:在同一个事务中,连续执行两次查询,但是两次查询之
MySQL:Windows下分库备份脚本
新获取到一个需求,就是要按库进行备份,写了份脚本和大家分享一下吧@echo off for /f "Tokens=1-3 Delims=/ " %%i in ('date /t') do set dt=%%i-%%j-%%k- for&
MySQL8.0:The General Query Log
常规查询日志是关于 mysqld 正在做什么的常规记录。当客户端连接或断开连接时,服务器将信息写入该日志,并记录从客户端接收的每个SQL语句。当您怀疑客户端出现错误并想要确切地知道客户端发送给 mysqld 的内容时,常规查询日志可能非常有用。 显示客户机何时连接的每一行还包括使用 connection_type 来指示用于建立连接的协议。connection_type 是TCP/IP(不使用
Oracle19c:一个很少有人知道,如今可以不用再知道的功能——修改用户名
19C以前的修改方法 version < 11.2.0.2 修改数据字典user$ UPDATE USER$ SET NAME = 'oaipo_sa' WHERE USER# = 'oa_ipo'; --生产库更改数据字典请谨慎操作 COMMIT; 手工生成检查点,使 update 操作写入数据文件 alter system chec
MySQL8:新特性——资源管理
MySQL 是单进程多线程的程序,MySQL 线程包括后台线程(Master Thread、IO Thread、Purge Thread 等),以及用户线程。在 8.0 之前,所有线程的优先级都是一样的,并且所有的线程的资源都是共享的。但是在MySQL8.0 之后,由于 Resource Group 特性的引入,我们可以来通过资源组的方式修改线程的优先级以及所能使用的资源,可以指定不同的线程使用特
MySQL:刷新机制
MySQL这种关系型数据库,讲究日志先行策略,就是一条DML语句进入数据库之后,先写日志,再写数据文件 redo logredo log 又称重做日志文件,用来记录事务操作的变化,记录数据修改之后的值,不管事务是否被提交,都会被记录下来 在实例和介质失败时,如数据库掉电,这时候InnoDB存储引擎会使用重做日志,恢复到掉电前的时刻 默认情况至少有两个redo log文件,在磁盘用ib_log
MySQL:数据类型
MySQL中定义数据字段的类型对你数据库的优化是非常重要的。 MySQL支持多种类型,大致可以分为三类:数值、日期/时间和字符串(字符)类型。 数值类型MySQL支持所有标准SQL数值数据类型。 这些类型包括严格数值数据类型(INTEGER、SMALLINT、DECIMAL和NUMERIC),以及近似数值数据类型(FLOAT、REAL和DOUBLE PRECISION)。 关键字INT是I
MySQL:内存结构
SGA innodb_buffer_boolinnodb 高速缓冲 data 和索引,简称 IBP,这个是 Innodb 引擎中影响性能最大的参数。用来缓存Innodb表的数据、索引、插入缓冲、数据字典等信息。建议将 IBP 设置的大一些,单实例下,建议设置为可用 RAM 的 50%~80%。 innodb 不依赖 OS,而是自己缓存了所有数据,包括索引数据、行数据等等,这个和 myisa
MySQL:show index
语法show index from your_tablename WHERE condition; 示例mysql> show index from baymax.resource_database\G; *************************** 1. row *************************** Table: resource_d
MySQL:事务
认识事务 A(Atomicity)—原子性:整个数据库事务是不可分割的工作单位。只有使事务中所有的数据库操作都执行成功,才算整个事务成功。事务中任何一个 SQL 语句执行失败,已经执行成功的 SQL 语句也必须回滚,退回到执行事务前的状态。C(Consistency)—一致性:将数据库从一种状态转变为下一种一致的状态。在事务开始之前和事务结束以后,数据库的完整性约束没有被破坏。I(Isolati
MySQL:锁
lock & latch lock latch 对象 事务 线程 保护 数据库内容 内存数据结构 持续时间 整个事务过程 临界资源 模式 行锁、表锁、意向锁 读写锁、互斥锁 死锁 通过 wait-for graph、time out 等机制进行死锁检测与处理 无死锁检测与处理机制。仅通过应用程序加
MySQL:optimizer_switch
查看mysql> SELECT @@optimizer_switch\G; *************************** 1. row *************************** @@optimizer_switch: index_merge=on,index_merge_union=on,index_merge_sort_union=on,index_merg
MySQL:索引介绍
索引概述 B+ 树索引全文索引哈希索引 数据结构与算法二分查找法折半查找法 二叉查找树和平衡二叉树 B+ 树插入 插入 28插入 70根据中间的值 60 来拆分叶子节点插入 95 删除 删除 70删除 25将 25 的右兄弟节点的 28 跟新到 Page Index 中删除 60Fill Factor 小于 50%,需要做合并操作 B+ 树索引查找某一键值的行记录时最多只需
MySQL:表简介
索引组织表主键 判断表中是否有非空的 Unique 索引,有的话选择第一个定义的非空 Unique 索引作为主键没有的话自动创建 6 字节大小的指针。 _rowid 可以显示表的主键,仅限于单列主键 InnoDB 逻辑存储结构区每个区的大小都是 1 MB。创建表初始先用 32 个页大小的碎片页来存放数据,在使用完这些页之后才是 64 个连续的页的申请。 页 数据页undo 页系统页事务数