首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

mysql 引出的问题

背景 将测试环境的同步到另外一个数据库服务器中,但有些表里面数据巨大,(其实不同步该的数据就行,当时没想太多),几千万的数据!! 步骤 1....查看当前的事物 #当前运行的所有事务 mysql> SELECT * FROM information_schema.INNODB_TRX; #当前出现的锁 mysql> SELECT * FROM...修改后重启mysql,这里面又涉及到mysql的关闭 bin/mysqladmin -uroot -p shutdown 就关闭了sql的,不建议直接kill -9 ,不知道会出现什么幺蛾子 重启的话,...还是用mysql_safe去启动既可 7....那么就比较下 drop,truncate,delete的区别吧   a. drop是整个都没有了的,结构也没没有了的,truncate和delete的结构还在;   b. delete可以指定where

2.5K70
您找到你想要的搜索结果了吗?
是的
没有找到

用户空间的操作还能flashback回来吗?

闪回?闪回数据库?...那我们就从一个不了解闪回特性的角度来一一看这个问题(这里假设是这个用户下就一张) 下面是整个分析过程: 场景一、闪回查询 SQL> create table aaa.a1(id number); Table...or view does not exist 可以看出闪回查询是无效的,其实你要是懂一点闪回查询首先可以排除掉,因为闪回查询是基于undo的,而且undo受ddl影响的,drop操作并不会使用到undo空间...场景二、闪回(flashback table) SQL> flashback table aaa.a1 to before drop; flashback table aaa.a1 to before...drop * ERROR at line 1: ORA-01435: user does not exist drop user cascade并不会把放入回收站的,那么我们再怎么执行flashback

83720

MYSQL 基本操作-管理数据数据【之增,,改】

文章目录 前言 MYSQL基本操作-的相关操作04 修改数据 修改名 修改字段排列顺序 修改字段数据类型 修改字段名字 添加字段 删除字段 删除数据 MYSQL基本操作-管理数据数据05...插入记录 修改中的全部数据 删除记录 删除中的全部数据 结语 ---- 前言 内容: MYSQL基本操作-的相关操作04 MYSQL 基本操作-管理数据数据【之增,,改】05 MYSQL基本操作...[IF EXISTS] 名1 [ ,名2, 名3 ...]...可以看到跟删除库差不多 实际栗子 # 删除如果存在 drop table if exists customers; MYSQL基本操作-管理数据数据05 插入记录 insert 属于DML语句(数据操纵语句...delete from customers; 结语 下一篇:MYSQL 基本操作-select 查询语句-06

82710

MySQL为什么还有kill不掉的语句?

了解MySQL全局锁和锁知道当对一个做增删改查操作时,会在上加 MDL 读锁。所以,session B 虽然处于 blocked 状态,但还是拿着一个 MDL 读锁的。...只是对于 MySQL 的 kill 命令来说,不需要传信号量参数,就只有“停止”这个命令 实现上,当用户执行 kill query thread_id_B 时,MySQL 里处理 kill 命令的线程做了两件事...接下来,我们再看一个 kill 不掉的例子 首先,执行 set global innodb_thread_concurrency=2,将 InnoDB 的并发线程上限数设置为 2;然后,执行下面的序列:...总结 MySQL 中,有些语句和连接“kill 不掉”的情况。...这些“kill 不掉”的情况,其实是因为发送 kill 命令的客户端,并没有强行停止目标线程的执行,而只是设置了个状态,并唤醒对应的线程。

7.1K30

MySQL - 库了,但是很慢

可以看到在库时调用的是 mysql_rm_db 这个函数,而这个函数又调用了 mysql_rm_table_no_locks 函数,mysql_rm_table_no_locks 会去清理数据字典。...那库为什么会慢呢?回答这个问题还需要更加深入地分析才行。 ---- OFF-CPU 如果一个进程所依赖的所有资源都已经准备好,那它就可以被调度到 cpu 上执行。...我在分析清理文件的时候发现 vfs 并没有 rm_file 这样的 API ,而是采用“以写代” 的方式来完成删除操作; 也就是说操作系统并不直接去删除文件,而是把文件系统里面对应的 inode 标记为...---- 结论 通过函数调用堆栈(火焰图)我们可以知道,删除一个库依赖于删除这个库下所有的,删除一个不只要清理数据字典还要删除磁盘文件。...和当事人确认后得知他这个库里面,数据量并不大(不会超过 1GB);但是特别多,一个逻辑对应着 10000 个物理,一套业务走下来,导致这个库里面有几十万个,这个也就是 drop database

2.3K20

顺序的实现(头插、尾插、头、尾、查找、删除、插入)

x); //顺序表头 void SeqListPopBack(SL* ps); //顺序 void SeqListPopFront(SL* ps); // 顺序在pos位置插入x void...在顺序列表的开头(现在为空)插入新元素 ps->a[0] = x; // 更新顺序列表的大小(元素数量) ps->size++; } 4.7顺序表头...// 头:删除顺序列表的第一个元素 void SeqListPopFront(SL* ps) { // 断言,确保顺序列表不为空,即其大小大于0 // 如果ps->size...// 因为第一个元素已经被覆盖,所以不需要额外处理 // 更新顺序列表的大小(元素数量),因为删除了一个元素,所以大小减1 ps->size--; } 4.8顺序...// 尾:删除顺序列表的最后一个元素 void SeqListPopBack(SL* ps) { // 断言,确保顺序列表不为空,即其大小大于0 // 如果ps->size

20610

MySQL系列】- binlog预防库跑路

如果哪天不小心把给删了,数据都没了或者一不留神被删库跑路了,那怎么把数据恢复呢?这就需要今天的主角binlog登场了。...binlog的格式 MySQL有好3种格式记录binlog,具体的格式取决于MySQL数据库的版本。...缺点:记录的细节比较多,导致binlog文件会特别大,特别是当执行alter table之类的语句的时候,由于结构修改,每条记录都发生改变,那么该每一条记录都会记录到日志中。...,也就是在STATEMENT和ROW之间选择一种.新版本的MySQL中对ROW格式也被做了优化,并不是所有的修改都会以ROW格式来记录,像遇到结构变更的时候就会以STATEMENT模式来记录。...有一张如下: orders@db_test 修改一下中数据,通过上面命令查看binlog并截取其中一段 binlog部分内容 从binlog中可以看到记录更新前后的数据,这样就可以以可读的方式查看

77830
领券