草庐IT

内核MySQL

全部标签

MySQL查询性能优化——索引分类(二)

目录一、索引分类 1.按存储引擎存储形式分类   1.1聚集索引  1.1.1聚集索引结构 1.2二级索引 1.2.1二级索引结构2.按数据库分类 2.1主键索引  2.2唯一索引 2.3常规索引 2.4联合索引 2.5全文索引上一期说到索引的原理其实就是B+树,这期我们来聊一下索引的分类。一、索引分类 1.按存储引擎存储形式分类    按存储引擎存储形式可以分为聚集索引和二级索引,这两种索引也是索引的两大类。 1.1聚集索引 将数据与索引存储到一块,索引结构的叶子节点存储行数据。聚集索引有且只能有一个,我们常说的主键就是聚集索引。 聚集索引的选取规则:如果存在主键,那么主键就是聚集索引。如果

mysql 各种常见的锁

数据库锁是用来在并发时控制不同资源的访问策略。锁的分类可以从不同的角度划分有很多种不同的锁。1、按功能划分锁按功能划分大致分为两种共享锁(SharedLocks)和排它锁(ExclusiveLocks)。共享锁也称为S锁、读锁。排它锁也称为写锁,X锁。共享锁允许事务读取一行数据。排它锁允许事务更新或删除一行记录。共享锁多个事务可以同时获得,但是一个事务如果想获取行上的排它锁必须要等待其它事务所有锁释放,包括共享锁和排它锁。2、按控制粒度范围划分全局锁全局锁是对整个数据库加锁,一般在数据库备份或恢复时候为了保持数据一致性进行全局锁控制。表锁表锁分两种,一种是显示的使用locktables语句进行

树莓派Linux源码配置,树莓派Linux内核编译,树莓派Linux内核更换

目录一  树莓派Linux的源码配置①内核源码下载说明②三种方法配置源码二  树莓派Linux内核编译①内核编译②编译时报错及解决方案(亲测)三  更换树莓派Linux内核操作步骤说明●dmesg报错及解决方案(亲测)一  树莓派Linux的源码配置配置说明:驱动代码的编译需要一个提前编译好的内核,所以需要先编译内核,而编译内核又必须提前完成相关的源码配置;配置目标:最终生成.config文件,该文件是指导Makefile去把有用东西的组织成内核。①内核源码下载说明●查看树莓派原内核版本号: uname-r●树莓派Linux源码下载网址:https://github.com/raspberry

MySQL 性能优化思路和优化案例

MySQL性能优化是确保数据库高效运行的关键过程。这通常涉及到多个方面,如查询性能、索引策略、系统配置、硬件资源等。以下是一些优化思路及其案例优化思路1.查询优化思路:重写低效的查询,避免使用子查询,改用连接(JOIN)。减少全表扫描,确保WHERE子句中使用索引。使用合适的投影,只获取必要的列。案例:--优化前SELECT*FROMordersWHEREdate(order_date)='2021-01-01';--优化后SELECTorder_id,customer_idFROMordersWHEREorder_dateBETWEEN'2021-01-01'AND'2021-01-0123

MySQL 开启远程连接

MySQL开启远程连接一、MySQL开启远程连接需要先在服务器上登录到MySQLmysql-uroot-p然后Enterpassword:二、修改root账户的Host1、打开mysql数据库usemysql;2、查看user数据表当前已有的数据select*fromuser\G;3、修改一条root数据,并刷新MySQL的系统权限相关表updateusersetHost='%'whereHost='localhost'andUser='root';flushprivileges;或者使用grant命令重新创建一个用户grantallprivilegeson*.*toroot@"%"ident

高斯数据库gaussDB(DWS),全网首篇对标MySQL命令集合文章

文章目录创建高斯数据库gaussDB(DWS)连接gaussDB(DWS)GaussDB(DWS)命令学习`\l`:列出所有数据库`\c数据库名`:切换数据库创建一个表维护数据创建和管理schema其余命令总结创建高斯数据库gaussDB(DWS)在正式开始前需要提前创建一下VPC,位置入口如下所示。在打开的页面配置如下信息,然后创建即可。其中首要进行的修改是基本名称和子网名称创建完毕之后的结果如下所示:接下来就可以配置高斯数据库DWS了,功能入口地址为大数据->数据仓库服务GaussDB(DWS)这里按照华为云提示输入即可,请注意购买一个公网IP,否则后续实践不好操作。虚拟私有云选择前文配置

MySQL在Linux上的四种安装方式

目录前言一、仓库安装二、本地安装三、容器安装四、源码安装前言博主的配置信息:Windows版本:Win10VMware虚拟机版本:VmwareWorkstationPro17Linux版本:RedHatEnterpriseLinux9.1MySQL版本:MySQLCommunityServer8.0.32保证Linux的正常联网以及配置yum仓库。可以在MySQL官网地址:https://www.mysql.com/ 上获取到正规的MySQL。MySQL常见版本:MySQLCommunityServer社区版本,开源免费,但不提供官方技术支持。MySQLEnterpriseEdition企业版

【小白专用】MySQL查询数据库所有表名及表结构其注释

一、先了解下INFORMATION_SCHEMA1、在MySQL中,把INFORMATION_SCHEMA看作是一个数据库,确切说是信息数据库。其中保存着关于MySQL服务器所维护的所有其他数据库的信息。如数据库名,数据库的表,表栏的数据类型与访问权限等。在INFORMATION_SCHEMA中,有数个只读表。它们实际上是视图,而不是基本表,因此,你将无法看到与之相关的任何文件。2、TABLES表:提供了关于数据库中的表的信息(包括视图)。详细表述了某个表属于哪个schema,表类型,表引擎,创建时间等信息。是showtablesfromschemaname的结果取之此表。3、COLUMNS表

java - 将特定线程绑定(bind)到特定处理器内核

我在大学里对并行处理有所了解,现在我正努力在这方面做得更好。我可以编写可以并行运行的代码,然后启动线程,但之后我就失去了对线程执行的操作的控制。我想知道如何控制线程,例如将特定线程绑定(bind)到特定处理器内核。我对C++最感兴趣,但我已经用Java对此进行了一些编码,因此也欢迎那些答案。 最佳答案 与其他一些受访者的建议相反,对于某些系统(当然是高频交易,毫无疑问还有许多其他非常低延迟的系统,例如搜索引擎),将线程绑定(bind)到CPU核心(或超-线程核心,单个CPU线程)可以带来巨大的性能优势。天真但越来越被拒绝的观点是,增

MySQL查看bin_log日志

有这样一段业务逻辑,首先保存业务数据,然后发送报文,最后确认报文回来以后更新业务数据。伪代码大概是这样的:/***保存数据,并调用发送报文方法*/publicvoidsave(){//0.保存数据//调用send()方法send();}/***发送报文*/publicvoidsend(){//1.发送报文(调用Dubbo服务)//2.更新数据状态}/***回调*/publicvoidcallback(){//3.收到确认报文//4.查询业务数据,并更新数据状态}然而,出问题了。。。在回调方法中,根据业务单号查询业务单数据时查不到。这刚插入的数据,怎么就查不到呢?首先排除了MyBatis-Plu