随笔分类 -  MySQL

Something about MySQL
摘要:在MySQL中授予root用户从任意主机访问数据库的权限,需执行以下操作步骤(以MySQL 5.7和8.0版本为例): 一、基础授权操作 ‌登录MySQL服务器‌ bash mysql -u root -p ‌执行授权命令‌ ‌MySQL 5.7及以下版本‌: sql GRANT ALL PRIVI 阅读全文
posted @ 2025-08-11 19:49 Mr.peter 阅读(214) 评论(0) 推荐(0)
摘要:update user set host='%' where user ='root'; FLUSH PRIVILEGES; GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'WITH GRANT OPTION; ALTER USER 'root'@'%' IDENT 阅读全文
posted @ 2022-04-17 14:16 Mr.peter 阅读(197) 评论(0) 推荐(0)
摘要:卸载已经安装过的MySQL 检查是否已经安装 rpm -qa|grep mysql 卸载: for i in $(rpm -qa|grep mysql);do rpm -e $i --nodeps;done rm -rf /var/lib/mysql && rm -rf /etc/my.cnf 检查 阅读全文
posted @ 2022-04-16 19:55 Mr.peter 阅读(67) 评论(0) 推荐(0)
摘要:事务是MySQL等关系型数据库区别于NoSQL的重要方面,是保证数据一致性的重要手段。本文将首先介绍MySQL事务相关的基础概念,然后介绍事务的ACID特性,并分析其实现原理。 一、基础概念 事务(Transaction)是访问和更新数据库的程序执行单元;事务中可能包含一个或多个sql语句,这些语句 阅读全文
posted @ 2022-03-17 14:37 Mr.peter 阅读(140) 评论(0) 推荐(0)
摘要:1.查看下在锁的事务 SELECT * FROM INFORMATION_SCHEMA.INNODB_TRX; 2.杀死进程id(就是上面命令的trx_mysql_thread_id列) kill 线程ID 例子: 查出死锁进程:SHOW PROCESSLIST杀掉进程 KILL 420821; 其 阅读全文
posted @ 2021-09-24 18:06 Mr.peter 阅读(2033) 评论(0) 推荐(0)
摘要:ALTER TABLE domains ADD CONSTRAINT unique_name UNIQUE(domain); desc domains; 阅读全文
posted @ 2021-06-16 16:55 Mr.peter 阅读(803) 评论(0) 推荐(0)
摘要:1. 默认字符集由latin1变为utf8mb4 在8.0版本之前,默认字符集为latin1,utf8指向的是utf8mb3,8.0版本默认字符集为utf8mb4,utf8默认指向的也是utf8mb4。 注:在Percona Server 8.0.15版本上测试,utf8仍然指向的是utf8mb3, 阅读全文
posted @ 2020-12-31 17:36 Mr.peter 阅读(479) 评论(0) 推荐(0)
摘要:Innodb中如何解决 可重复读(RR) 中产生幻读的情况 锁模型 LBCC (Lock Based Concurrency Control) 读之前加个锁,但这样可能会导致性能问题 => 读的时候加锁导致其他事务都不能读写了,性能低下 MVCC(Multi Version Concurrency 阅读全文
posted @ 2020-12-22 16:47 Mr.peter 阅读(107) 评论(0) 推荐(0)
摘要:在日常工作中,我们会有时会开慢查询去记录一些执行时间比较久的SQL语句,找出这些SQL语句并不意味着完事了,些时我们常常用到explain这个命令来查看一个这些SQL语句的执行计划,查看该SQL语句有没有使用上了索引,有没有做全表扫描,这都可以通过explain命令来查看。所以我们深入了解MySQL 阅读全文
posted @ 2020-12-22 11:01 Mr.peter 阅读(141) 评论(0) 推荐(0)
摘要:show status like '%Handler_read%'; + + + | Variable_name | Value | + + + | Handler_read_first | 0 | | Handler_read_key | 0 | | Handler_read_last | 0 | 阅读全文
posted @ 2020-12-22 10:36 Mr.peter 阅读(395) 评论(0) 推荐(0)
摘要:更新语句的整体流程 连接数据库 清空当前表对应的所有缓存 分析器分析词法和语法 优化器决定使用什么索引 执行器负责具体执行 重要的日志模块:redo log MySQL的WAL技术 全称是Write-Ahead Logging InnoDB 引擎特有的日志 先写日志,再写磁盘 详解如下: 1、当有一 阅读全文
posted @ 2020-12-20 11:36 Mr.peter 阅读(558) 评论(0) 推荐(0)
摘要:ACID,是指在可靠数据库管理系统(DBMS)中,事务(transaction)所应该具有的四个特性:原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability)。 事务的(ACID)特性是由关系数据库管理系统(RDBMS,数据库系统) 阅读全文
posted @ 2020-12-08 18:59 Mr.peter 阅读(565) 评论(0) 推荐(0)
摘要:1.hash方式 2.求余方式 阅读全文
posted @ 2020-11-07 22:39 Mr.peter 阅读(189) 评论(0) 推荐(0)
摘要: 阅读全文
posted @ 2020-08-25 18:48 Mr.peter 阅读(801) 评论(0) 推荐(0)
摘要:一条查询语句是如何执行的 查询语句的执行分为以下几步: 查询缓存 解析器生成解析树 预处理再次生成解析树 查询优化器 查询执行计划 查询执行引擎 查询数据返回结果 查询缓存 通过如下语句可查看缓存开关情况(默认关闭):show variables like 'query_cache%'; 1.MyS 阅读全文
posted @ 2020-08-25 14:23 Mr.peter 阅读(1089) 评论(0) 推荐(0)
摘要:查询某表的所有索引: show index from books; 阅读全文
posted @ 2020-04-29 16:03 Mr.peter 阅读(152) 评论(0) 推荐(0)
摘要:select * from information_schema.innodb_trx 阅读全文
posted @ 2020-03-18 14:10 Mr.peter 阅读(1161) 评论(0) 推荐(0)
摘要:1.修改root密码 MySQL8和5的密码加密方式不同,mysql_native_password是5的加密方式。mysql已经将之前的mysql_native_password认证,修改成了caching_sha2_password认证方式。所以,使用类似于navicat或是sqlyog这些客户 阅读全文
posted @ 2019-07-30 10:55 Mr.peter 阅读(189) 评论(0) 推荐(0)
摘要:1.删除系统现存的mysql 2.卸载mysql组件 3.删除mysql的配置文件,卸载不会自动删除配置文件,首先使用如下命令查找出所用的配置文件 4.删除查到的mysql文件 全删 举例: 5.卸载删除完毕,开始安装mysql8 下载mysql的rpm安装包,可以去mysql官网去看 6.下载完成 阅读全文
posted @ 2019-07-30 10:52 Mr.peter 阅读(334) 评论(0) 推荐(0)
摘要:读写分离: 为保证数据库数据的一致性,我们要求所有对于数据库的更新操作都是针对主数据库的,但是读操作是可以针对从数据库来进行。大多数站点的数据库读操作比写操作更加密集,而且查询条件相对复杂,数据库的大部分性能消耗在查询操作上了。主从复制数据是异步完成的,这就导致主从数据库中的数据有一定的延迟,在读写 阅读全文
posted @ 2019-06-03 16:36 Mr.peter 阅读(542) 评论(0) 推荐(0)