mysql—day02-mysql

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群版 2核4GB 100GB
推荐场景:
搭建个人博客
云数据库 RDS MySQL,高可用版 2核4GB 50GB
简介: 误删除root用户解决方法1

误删除root用户解决方法1

1)停止数据库
[root@db02  ~]# /etc/init.d/mysqld stop 
2)跳过授权表,跳过网络启动数据库
[root@db02  ~]# mysqld_safe --skip-grant-tables --skip-networking & 
3)连接数据库
[root@db02  ~]# mysql 
4)插入新root用户
insert into mysql.user values ('localhost','root',PASSWORD('123'),
'Y',
'Y',
'Y',
'Y',
'Y',
'Y',
'Y',
'Y',
'Y',
'Y',
'Y',
'Y',
'Y',
'Y',
'Y',
'Y',
'Y',
'Y',
'Y',
'Y',
'Y',
'Y',
'Y',
'Y',
'Y',
'Y',
'Y',
'Y',
'Y',
'',
'',
'',
'',0,0,0,0,'mysql_native_password','','N');
5)重启MySQL
[root@db01  ~]# mysqladmin shutdown 
[root@db01  ~]# /etc/init.d/mysqld start 
Starting MySQL. SUCCESS!
创建超级用户
mysql> grant all on *.*  to root@'192.168.110.12' identified by '123' with grant option;

误删除root用户解决方法2

1)停止数据库
[root@db02  ~]# /etc/init.d/mysqld stop 
2)跳过授权表,跳过网络启动数据库
[root@db02  ~]# mysqld_safe --skip-grant-tables --skip-networking & 
3)连接数据库
[root@db02  ~]# mysql 
4)刷新授权表
mysql> flush privileges;
5)创建root超级用户
mysql> grant all on . to root@'localhost' identified by '123' with grant option;

mysqld服务器程序构成

image.png

1.连接层:


  • 验证用户合法性(用户名/密码/端口)
  • 提供tcp/socket连接方式
  • 提供一个专用连接层的线程(接收sql返回结果),将sql交给sql层处理

2.sql层


  • 接收连接层传来的sql语句
  • 检查sql语法是否正确
  • 检查语义(DDL DML DQL DCL) 检查show select grant
  • 解析器,解析sql语句,生成多种执行计划
  • 优化器,根据多种执行计划选择最优方式。
  • 执行器,执行优化器传来的最优方式sql;
  • 提供跟存储引擎层交互的线程
  • 接收返回数据,优化成表的形式返回sql
  • 将数据存入缓存
  • 记录binlog日志

3.存储引擎层

  • 接收sql传来的sql语句
  • 去磁盘找到要找的数据
  • 提供一个与sql层交互的线程,返回给sql层,结构化成表的形式。




MySQL程序连接方式:

1.TCP/IP连接

mysql -uroot -p123 -h127.0.0.1

1)并不是所有的-h都是TCP/IP连接

2)所有的远程连接都是TCP/IP连接


2.socket连接

mysql -uroot -p123 -S /tmp/mysql.sock

mysql -uroot -p123

mysql -uroot -p123 -hlocalhost


1.MySQL默认连接方式是socket连接

2.socket连接速度快,因为不需要建立三次握手


什么是实例?

1.MySQL的后台进程+线程+预分配的内存结构。

2.MySQL在启动的过程中会启动后台守护进程,并生成工作线程,预分配内存结构供MySQL处理数据使用。


MySQL的结构

image.png

查看当前所在库

mysql> select database();
相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
3月前
|
存储 关系型数据库 MySQL
深入理解mysql
深入理解mysql
61 1
|
13天前
|
数据采集 算法 关系型数据库
在 MySQL 中使用 SOUNDEX?
【8月更文挑战第6天】
35 0
在 MySQL 中使用 SOUNDEX?
|
2月前
|
SQL NoSQL 关系型数据库
Mysql锁及适用场景
Mysql锁及适用场景
35 0
|
3月前
MySql45道练习
MySql45道练习
71 0
|
10月前
|
SQL 算法 关系型数据库
|
关系型数据库 MySQL
MySQL一行变多行,多行变一行
MySQL一行变多行,多行变一行
179 1
MySQL一行变多行,多行变一行
|
SQL 存储 缓存
MySQL组成
MySQL组成
|
SQL 存储 缓存
MySQL的组成
SQL运行机制概述
121 0
MySQL的组成
|
关系型数据库 MySQL 数据库
MySQL(四)
MySQL(四),一起来学习吧。
|
关系型数据库 MySQL
MySQL - 查询表达式总结
MySQL - 查询表达式总结
104 0
MySQL - 查询表达式总结