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

MySQL数据库文件移动和权限设置

新型数据库层出不穷,MySQL一幅日薄西山样子。其实还有很多人或者偏爱、或者使用以前遗留系统,仍然生活在MySQL世界。 我也是有很久不用了,这个很久超过十年。...,免得拷贝完成再设置权限 # cp -Ra mysql /media/data/ // 老文件先不删除,保留备份防止意外 # mv mysql mysql-bak // 偷个懒,直接建一个链接,免得要修改...老文件夹尚未删除,逐个对比了文件权限,未发现问题。 在网上搜索了一下资料,发现大家不约而同采用mv命令来移动数据文件夹,也是为了避免出现权限问题。而这里我为了保存备份,采用了cp -Ra。...这给出了一点线索,当前服务器Linux版本,都已经默认了更高安全设置。Centos是SELinux,Ubuntu是AppArmor。...这里说起来只是一句话,当时现场,是做了很多无用功才查看服务器启动脚本中想到了这个问题,时间浪费不少。

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

讲讲MySQL删除

删除并不是真正删除 熟悉mysql同学都应该知道,当我们执行delete时候,数据并没有被真正删除,只是对应数据删除标识deleteMark被打开了,这样每次执行查询时候,如果发现数据存在但是...15M 7 6 18:46 user_info.ibd #删除前 15M 10 4 16:47 user_info.ibd #删除后 为什么不直接删除,而是打个标记 只是打个标记的话,岂不是很浪费空间...mysql里面有个purge线程,它工作中有一项任务就是专门检查这些有deleteMark数据,当有deleteMark数据如果没有被其他事务引用时,那么会被标记成可复用,因为叶子节点数据是有序原因...手动重建表 重建表不一定会收缩空间 重建表过程中,有一点需要知道:InnoDB不会让重建后页充满数据,会预留个「1/16」空间,这个意图很明显,如果不预留,选择占满整个页,这时候去更新一条需要更大空间老数据...第一次重建表后,因为新插入导致用掉了预留空间一部分(这里需要注意是预留空间没用完,还剩一部分),但是没有用到新页,所以整体空间没有变化,这时候如果再次重建表,就会因为要预留1/16,导致申请

2.9K20

MySQL删除表时IO错误原因分析

此时发现space->stop_new_ops为true,也就是要处理页面所属space正在被删除。为什么会去操作正在被删除space呢?...,如不在,说明已经被删除了,删除对应ibuf记录; 主线程判断是否对一个正在删除space进行异步读取操作,如果是,报错,并删除对应ibuf记录,转到过程2继续下一个数组元素判断; 如果一切判断正常...如果检测到大于0,意味着还有依赖I/O未完成,睡眠20ms后重试; 此时认为已经没有冲突操作了,刷出所有脏页面或删除所有给定表空间页面; 从表空间缓存删除指定space记录; 删除对应数据文件...两线程交互如下图所示: ? 不出意外的话,在打中断点时必然有线程执行对应表删除操作。...表示忽略正在删除space,默认为false,当ibuf_merge_pages调用时候置为true。fil_io报错处额外判断该参数是否为true,是则不报错,继续其他流程。

1.8K20

字符串JVM哪里

关于字符串JVM哪里 字符串对象JVM中可能有两个存放位置:字符串常量池或堆内存。...使用常量字符串初始化字符串对象,它值存放在字符串常量池中; 使用字符串构造方法创建字符串对象,它值存放在堆内存中; 另外String提供了一个API, java.lang.String.intern...(),这个API可以手动将一个字符串对象值转移到字符串常量池中 JDK1.7之后虽然字符串常量池也转换到了堆中,但是其实字符串常量池是堆中独立开辟空间,我们创建一个普通字符串和一个字符串对象结构类似于下图...代码验证 这里其实我们可以看出一些intern()特性了. intern源码分析 我们来看intern方法实现,intern方法底层是一个native方法,Hotspot JVM里字符串常量池它逻辑注释里写得很清楚...总结 Java应用恰当得使用String.intern()方法有助于节省内存空间,但是使用时候,也需要注意,因为StringTable大小是固定,如果常量池中字符串过多,会影响程序运行效率。

4.3K30

郑州,你该买哪里房子?

背景 某次和领导吃饭,无意中提到了房子的话题,说了几句自己心得经验(虽然没有再次实操资本),却给领导留下了深深印象(领导,你不是又要在郑州置业了吧)。 ?...前段时间一个老朋友也联系我咨询郑州房子事情(难道就因为我郑州吗?)。那朋友一连串问了我好几个为题,听说郑州现在房子降价了?现在该不该买?买这个XXX楼盘合适吗? ? 可是,我们是老朋友,你懂。...本着负责任态度,今天我们来一块分析下郑州房价,数据爬取自某房中介网站(我只是数据搬运工,不对数据真实性负责哈)。 ?...买房最关心应该就是房屋价格,下面我们来看下每个区域价格分布。 首先对原始数据进行处理,去掉单位,方便后续计算。...单价1万5左右房子最多。曾经有人问我,一个城市房价多高最幸福,我想是工资是房价1.2倍,然后没有贷款…… ?

9.1K40

MySQL 超大表删除方法

MySQL里面直接对大表执行drop table删除有可能导致mysql hang住。必须使用些特殊方法。 先搞一个大表出来,如下图: ? 可以看到t2表ibd大小为2.7GB了 ?...创建一个硬链接好处就是: 硬链接就是增加了对文件引用,只有对磁盘上文件引用完全没有了的话,这个文件才能是删除。...我们对t2.ibd 建立硬链接后,当我们执行drop table t2; 时候,实际上只是删除了对t2.ibd一个文件引用,我们t2.ibd_hdlk对物理文件引用还是存在,就不会执行OS级别的删除操作...这种对线上mysql影响降到很低。...2、执行实际删除 droptable test.t2; 3、使用coreutils工具集执行OS级别的文件删除 下载地址: ftp://alpha.gnu.org/gnu/coreutils/ tar

6.8K50

性能超过MySQLMariaDB到底强在哪里

p=5151 近年来,不少程序员吹捧MariaDB,抛弃MySQL。本文总结了一些 MariaDB强过MySQL地方,分享给大家! ?...MySQL发展史 MySQL历史可以追溯到1979年,它创始人叫作Michael Widenius,他开发一个报表工具时候,设计了一套API,后来他客户要求他API支持sql语句,他直接借助于...在此之前,Oracle2005年就收购了InnoDB,因此,InnoDB一直以来都只能作为第三方插件供用户选择。...MariaDB数据库管理系统是MySQL一个分支,主要由开源社区维护,采用GPL授权许可 MariaDB目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL代替品。...存储引擎方面,使用XtraDB来代替MySQLInnoDB。MariaDB由MySQL创始人Michael Widenius主导,由开源社区大神们进行开发。

2.3K20

MySQL异步删除大表方法

背景MySQL中有大表需要清理,该表超过100GB,不敢直接delete或者truncate、drop,怕影响业务。...delete、truncate、drop区别一般情况下(少量数据),不同场景可以选择不同方式来做数据删除。...常见大表删除方式对于大表场景,常见做法:小批量、分批删除;由于直接使用delete,是逐步删除,直接delete不带where条件肯定是不科学。..., 无须重启实例该功能无需用户操作,由内核自动完成,其原理是删除表时,为表数据文件另外一个目录中创建一个硬连接。...建议数据量小时候,清空表数据,使用truncate命令,删除表可直接drop数据量大时候,使用创建硬链接方式,drop table后再逐步删除文件;使用TDSQL的话,打开异步删除配置参数,直接drop

4.3K110

Windows下MySQL安装和删除

,总之就是刚刚解压文件放在那,就在哪打开~) 执行命令:mysqld --initialize-insecure --user=mysql D:\software\programming\environment...按照下面删除步骤 删除完成 重装 彻底删除Mysql 删除基础条件 停止MySQL运行 将MySQL服务停止,这里我只有一个MySQL服务,如有多个MySQL服务,也要全部停止掉。...net stop 要删除mysql服务名称 卸载mysql server等设备 删除MySQL安装目录下MySQL文件夹 这个文件目录找不到别找着急 下面步骤能找到 打开注册表编辑器...mysql位置 删除目录“C:\ProgramData\MySQL”文件夹 删除目录C:\ProgramData\MySQL文件夹,如果显示正在被其他应用所使用,无法进行删除,那么就需要重新启动电脑...只要在CMD里输入一条命令就可以将服务删除: sc delete mysql //这里mysql是你要删除服务名 这样一来服务就被删除了。

15810

计算机国产灵魂到底差哪里

国产系统替代是大趋势就市场格局而言,国内桌面操作系统方面,Windows、macOS处于绝对主导地位,虽然近5年国内市占率逐步下滑,不过仍占据超过90%市场份额。...国产操作系统Linux分类,占比不足5%,市占率有待提升。从当前国产化率来看,国内操作系统市场空间巨大。...如果让小程序来弥补应用生态缺陷其实小程序PC端运行并非空穴来风,微信小程序2019年已经支持Windows、macOS系统打开小程序。...目前微信小程序PC电脑端运行场景非常多,特别是涉及一些协同工作用户,电脑上操作小程序频次也非常高。...大力发展数字经济,各行各业数字化转型如火如荼背景下,新基建、东数西算、超算智算等政策先后推出,使国产操作系统迎来了难得发展机遇,我们有理由相信,国产操作系统前景亦是一片光明。

3K30

MySQL删除数据都去哪儿了?

我们平时调用 DELETE MySQL删除数据都去哪儿了? 这还用问吗?...这其实跟我们日常操作——软删除,差不多是一个意思 MySQL 中, UPDATE 和 DELETE 操作本质上是一样, 都属于更新操作,删除操作只不过是把某行数据中一个特定比特位标记为已删除...那么问题又来了,那这些删除数据如果一直这么堆下去,那不早晚把硬盘撑爆? 如果都玩儿成这样了,那 MySQL 还能像现在这样被大规模用于生产环境中吗?那 MySQL 到底是怎么玩?...当然,我相信你肯定不记得使用 MySQL 时候配置过这个,因为 innodb_purge_threads 有个默认值,值为 4。...这就是为啥 InnoDB 会根据实际情况来调整 MySQL 中 Purge 线程数量,所以我们配置时候也要按照实际情况来设置。

1.9K10

MySQL删除三种方式

,不删除结构,速度排第二,但不能与where一起使用 例如删除 user 表: truncate table user; delete from delete 是删除表中数据,不删除表结构,速度最慢...,但可以与where连用,可以删除指定行 例如删除user表所有数据 delete from user; 删除user表指定记录 delete from user where user_id =...1; 三种方式区别 相同点 truncate和不带where子句delete,drop都会删除表内数据; drop,truncate都是DDL语句(数据定义语言),执行后会自动提交; 不同点 语句类型...delete 只删除数据不删除表结构,truncate 删除后将重建索引(新插入数据后id从0开始记起),而 delete不会删除索引 (新插入数据将在删除数据索引后继续增加),drop语句将删除结构包括依赖约束...,触发器,索引等; 安全性:drop和truncate删除时不记录MySQL日志,不能回滚,delete删除会记录MySQL日志,可以回滚; 返回值:delete 操作后返回删除记录数,而 truncate

3.8K20
领券