linux安装MySQL8.0,密码修改权限配置等常规操作详解

news2024/12/29 9:05:20

在这里插入图片描述

✨✨ 欢迎大家来到景天科技苑✨✨

🎈🎈 养成好习惯,先赞后看哦~🎈🎈

🏆 作者简介:景天科技苑
🏆《头衔》:大厂架构师,华为云开发者社区专家博主,阿里云开发者社区专家博主,CSDN全栈领域优质创作者,掘金优秀博主,51CTO博客专家等。
🏆《博客》:Python全栈,前后端开发,小程序开发,人工智能,js逆向,App逆向,网络系统安全,数据分析,Django,fastapi,flask等框架,linux,shell脚本等实操经验,网站搭建,数据库等分享。

所属的专栏:MySQL数据库入门,进阶应用实战必备
景天的主页:景天科技苑

文章目录

  • 数据库
    • 数据库的分类
      • 关系型数据库
      • 非关系型数据库:
    • MySQL的特点
    • MySQL数据库安装步骤
      • 下载步骤
      • MySQL启动
      • 查看初始密码
      • 8.0修改密码
      • 创建远程访问用户
      • mysql赋权操作
      • 取消授权
      • 查看具体某个ip下的用户权限
    • MySQL数据库编码格式
      • 查看编码格式
      • 排序字符集

数据库

数据库就是存储和管理数据的仓库,数据按照一定的格式进行存储,用户可以对数据库中的数据进行增删改查等操作

数据库的分类

关系型数据库 Mysql, Oracle, postgreSQL, sqlserver, db2

非关系型数据库 Redis, Mongodb, Memcache

关系型数据库

采用了关系模型来组织数据的数据库,简单来说,关系型指的就是二维表格模型。
好比excel表格,强调使用表格的方式存储数据

关系型数据库核心元素:
数据行
数据列
数据表
数据库(数据表的集合)

常用的关系型数据库:
oracle
mysql
postgresql
SQLite 手机端使用的数据库

非关系型数据库:

非关系型数据库又被称为 NoSQL(Not Only SQL),意味着不仅仅是SQL,对NoSQL最普遍的定义是
非关系型的,强调key-value的方式存储数据

常用的非关系型数据库:document store

MongoDB document store
Redis key-value的方式存储数据

数据库特点:
1.持久化存储
2.读写度度极高
3.保证数据有效性

MySQL在web应用方面是最好的RDBMS应用软件。是最流行的关系型数据库。瑞典MySQL AB公司开发,被oracle收购

MySQL的特点

1.是开源的。
2.支持大型数据库。可以处理拥有上千万条记录数据
3.使用标准的SQL语言
4.MySQL可以安装在不同的操作系统,并提供多种编程语言操作接口

MySQL数据库安装步骤

下载步骤

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

下载这个
在这里插入图片描述

解压后,安装这几个

rpm -ivh mysql-community-server-8.0.33-1.el7.x86_64.rpm  --nodeps --force

在这里插入图片描述

MySQL启动

systemctl enable mysqld --now
systemctl status mysqld.service

在这里插入图片描述

查看初始密码

cat /var/log/mysqld.log | grep password

在这里插入图片描述

8.0修改密码

碰到这种情况,重启下mysql
在这里插入图片描述
在这里插入图片描述

修改密码:
5.7版本之后:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'Ji********';
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'Ji******7!';

修改完后,刷新系统相关权限表:

flush privileges;

在这里插入图片描述

创建远程访问用户

如果需要远程访问,还需要开通远程访问权限,否则将会报错:
主机ip is not allowed to connect this MYSQL server
通过以下命令,创建远程连接用户,并进行远程访问的授权

create user 'root'@'%' identified with mysql_native_password by 'Jin*******@';
grant all privileges on *.* to 'root'@'%' with grant option;
flush privileges;

mysql赋权操作

授权语法
grant 权限 on 数据库.表 to “用户名”@“ip地址” identified by “密码”;

select 查询数据的权限
insert 添加数据的权限
update 更改数据的权限
delete 删除数据的权限

授予查询,添加数据权限

* 表示所有权限
grant select,insert on *.* to "ceshi102"@"%" identified by "333";

授权所有库,所有表的所有权限

grant all privileges on *.* to 'root'@'%' with grant option;
flush privileges;

GRANT:赋权命令
ALL PRIVILEGES:当前用户的所有权限
ON:介词
.:当前用户对所有数据库和表的相应操作权限
TO:介词
‘root’@’%’:权限赋给root用户,所有ip都能连接
IDENTIFIED BY ‘123456’:连接时输入密码,密码为123456
WITH GRANT OPTION:允许级联赋权

取消授权

移除删除权限(删除数据库/表)

revoke drop on *.* from "ceshi102"@"%"

移除所有权限

revoke all on *.* from "ceshi102"@"%"

刷新权限,立刻生效

flush privileges

删除所有权限
在这里插入图片描述

查看某个用户权限:
USAGE 没有任何权限
在这里插入图片描述

查看具体某个ip下的用户权限

show grants for "ceshi102"@"%";
show grants for 'root'@'%';

在这里插入图片描述

创建个只有查询功能的测试用户
在这里插入图片描述

测试用户不能修改表数据
在这里插入图片描述

root是最高权限的账户,控制所有账户的所有权限

MySQL数据库编码格式

utf8 是 Mysql 中的一种字符集,只支持最长三个字节的 UTF-8 字符,也就是 Unicode 中的基本多文本平面。

要在 Mysql 中保存 4 字节长度的 UTF-8 字符,需要使用 utf8mb4 字符集,但只有 5.5.3 版本以后的才支持。
我觉得,为了获取更好的兼容性,应该总是使用 utf8mb4 而非 utf8. 对于 CHAR 类型数据,utf8mb4 会多消耗一些空间,根据 Mysql 官方建议,使用 VARCHAR 替代 CHAR。
如果数据库默认字符集不是 utf8mb4,那么可以在创建数据库时指定字符集:

CREATE DATABASE mydb CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

查看编码格式

mysql> show variables like "%char%";

在这里插入图片描述

MySQL 配置文件中字符集相关变量

character_set_client:客户端请求数据的字符集
character_set_connection:从客户端接收到数据,然后传输的字符集
character_set_database:默认数据库的字符集,无论默认数据库如何改变,都是这个字符集;如果没有默认数据库,那就使用 character_set_server 指定的字符集,这个变量建议由系统自己管理,不要人为定义。
character_set_filesystem:把操作系统上的文件名转化成此字符集,即把 character_set_client 转换 character_set_filesystem, 默认 binary 是不做任何转换的
character_set_results:结果集的字符集
character_set_server:数据库服务器的默认字符集
character_set_system:存储系统元数据的字符集,总是 utf8,不需要设置

排序字符集

utf8mb4_unicode_ci 和 utf8mb4_general_ci
1、准确性

utf8mb4_unicode_ci 是基于标准的 Unicode 来排序和比较,能够在各种语言之间精确排序

utf8mb4_general_ci 没有实现 Unicode 排序规则,在遇到某些特殊语言或者字符集,排序结果可能不一致。

但是绝大多数情况下,这些特殊字符的顺序并不需要那么精确。

2、性能

utf8mb4_general_ci 在比较和排序的时候更快

utf8mb4_unicode_ci 在特殊情况下,Unicode 排序规则为了能够处理特殊字符的情况,实现了略微复杂的排序算法。

但是在绝大多数情况下,不会发生此类复杂比较。相比选择哪一种 collation,使用者更应该关心字符集与排序规则在 db 里需要统一。

默认修改后的配置

[root@mysql01 mysql ]#cat /etc/my.cnf
[client]
default-character-set = utf8mb4
[mysql]
default-character-set = utf8mb4

[mysqld]

port = 3306




#连接数
max_connections = 2000
#跳过错误
#slave-skip-errors=all

#utf8mb4编码
character-set-client-handshake = FALSE
character-set-server = utf8mb4
init_connect='SET NAMES utf8mb4'



datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock

log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid


#
# include all files from the config directory
#
#!includedir /etc/my.cnf.d

改完后,要重启mysql

[root@mysql01 mysql ]#systemctl restart mysqld.service

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1621966.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【一刷剑指Offer】面试题 8:旋转数组的最小数字

力扣对应题目链接:154. 寻找旋转排序数组中的最小值 II - 力扣(LeetCode) 牛客对应题目链接: 旋转数组的最小数字_牛客题霸_牛客网 (nowcoder.com) 核心考点 :数组理解,二分查找,临界条件。 一…

Ajax和axios基础

AJAX Asynchronous JavaScript And XML 异步的JavaScript和XML 作用 数据交换: 通过Ajax可以给服务器发送请求,服务器将数据直接响应回给浏览器. 异步交互: 可以在不重新加载整个页面的情况下,与服务器交换数据并更新部分网页的技术. 同步和异步 同步发送请求: 浏览器发…

基于单片机的羽毛球计分器(含proteus仿真和程序)

目录 完整文本及仿真、程序可私信我获取 前言 第一章 设计任务及方案 1.1 设计任务 1.2 总体设计分析 1.3 功能模块方案设计 1.4 方案确定 第二章、硬件设计 2.1 AT89C51 单片机芯片介绍 2.1.1 主要特性 2.1.2 管脚说明 2.1.3 元件清单 2.2 电路介绍 2…

黑马微服务课程2

课程地址:2024最新SpringCloud微服务开发与实战,java黑马商城项目微服务实战开发(涵盖MybatisPlus、Docker、MQ、ES、Redis高级等)_哔哩哔哩_bilibili 课程名称:2024最新SpringCloud微服务开发与实战,java…

《数据密集型应用系统设计》笔记——第一部分 数据系统基础(ch1-4)

写在前面:对DDIA这本书慕名已久,粗看书里的一些知识都或多或少了解,但仔细阅读下来,还是缺少对细节的认识。目前看了四个章节,这本书一直在围绕两个问题:是什么和为什么,来做阐述,针…

AI大模型探索之路-训练篇3:大语言模型全景解读

文章目录 前言一、语言模型发展历程1. 第一阶段:统计语言模型(Statistical Language Model, SLM)2. 第二阶段:神经语言模型(Neural Language Model, NLM)3. 第三阶段:预训练语言模型&#xff08…

【高阶数据结构】B树 {B树的概念;B树的实现:节点设计,查找,插入,遍历,删除;B树的性能分析;B+树和B*树;B树的应用}

一、常见的搜索结构 以上结构适合用于数据量相对不是很大,能够一次性存放在内存中,进行数据查找的场景。如果数据量很大,比如有100G数据,无法一次放进内存中,那就只能放在磁盘上了,如果放在磁盘上&#xff…

Maven多模块快速升级超好用Idea插件-MPVP

功能:多模块maven项目快速升级指定版本插件,并提供预览和相关升级模块日志能力。 可快速进行版本升级,进行部署到Maven仓库。 安装: 可在idea插件中心进行安装 / 下载资源拖动安装 MPVP(Maven) - IntelliJ IDEs Plugin | Marke…

IPv4 NAT(含Cisco配置)

IPv4 NAT(含Cisco配置) IPv4私有空间地址 类RFC 1918 内部地址范围前缀A10.0.0.0 - 10.255.255.25510.0.0.0/8B172.16.0.0 - 172.31.255.255172.16.0.0/12C192.168.0.0 - 192.168.255.255192.168.0.0/16 这些私有地址可在企业或站点内使用&#xff0c…

【第35天】SQL进阶-SQL高级技巧-透视表(SQL 小虚竹)

回城传送–》《100天精通MYSQL从入门到就业》 文章目录 零、前言一、练习题目二、SQL思路初始化数据什么是透视表实战体验 三、总结四、参考 零、前言 今天是学习 SQL 打卡的第 35 天。 ​ 我的学习策略很简单,题海策略 费曼学习法。如果能把这些题都认认真真自己…

网络安全-Diffie Hellman密钥协商

密钥协商是保密通信双方(或更多方)通过公开信道来共同形成密钥的过程。一个密钥协商方案中,密钥的值是某个函数值,其输入量由两个成员(或更多方)来提供。密钥协商的记过是参与协商的双方(或更多…

消息服务应用1——java项目使用websocket

在当前微服务项目中,由于业务模块众多,消息服务的使用场景变得异常活跃。而WebSocket由于其自身的可靠性强,实时性好,带宽占用更小的优势,在实时通讯应用场景中独占鳌头,加上HTML5标准的普及流行&#xff0…

MultiHeadAttention在Tensorflow中的实现原理

前言 通过这篇文章,你可以学习到Tensorflow实现MultiHeadAttention的底层原理。 一、MultiHeadAttention的本质内涵 1.Self_Atention机制 MultiHeadAttention是Self_Atention的多头堆嵌,有必要对Self_Atention机制进行一次深入浅出的理解,这…

Docker 入门篇(一)-- 简介与安装教程(Windows和Linux)

一、Docker简介 Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何Linux机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间没有任何接口(类似iPhon…

记录海豚调度器删除工作流实例失败的解决办法(DolphinScheduler的WebUI删除失败)

本博客记录以下问题解决办法:使用dolphinscheduler的WebUI运行工作流后出现内存占用过高导致的任务阻塞问题,并且在删除工作流实例时总是报错无法删除 解决步骤 在前端页面无法删除,于是搜索资料,发现可以登录数据库进行工作流实…

【C语言 |预处理指令】预处理指令详解(包括编译与链接)

目录 一、编译与链接 1.翻译环境 -预处理 -编译 -汇编 -链接 2.执行环境 二、预定义符号 三、#define定义常量 四、#define定义宏 五、带有副作用的宏参数 六、宏替换的规则 七、 宏函数的对比 八、#和## 1.#运算符 2.##运算符 九、命名约定 十、#undef 十一、 命…

【服务器部署篇】Linux下Tomcat安装和配置

作者介绍:本人笔名姑苏老陈,从事JAVA开发工作十多年了,带过刚毕业的实习生,也带过技术团队。最近有个朋友的表弟,马上要大学毕业了,想从事JAVA开发工作,但不知道从何处入手。于是,产…

Linux网络编程---Socket编程

一、网络套接字 一个文件描述符指向一个套接字(该套接字内部由内核借助两个缓冲区实现。) 在通信过程中,套接字一定是成对出现的 套接字通讯原理示意图: 二、预备知识 1. 网络字节序 内存中的多字节数据相对于内存地址有大端和小端之分 小端法&…

Ubuntu终端常用指令

cat cat 读取文件的内容 1、ls 一、 1、ll 显示当前目录下文件的详细信息,包括读写权限,文件大小,文件生成日期等(若想按照更改的时间先后排序,则需加-t参数,按时间降序(最新修改的时间排在最前)执行: $ ll -t, 按时间升序执行: $ ll -t | tac): ll 2、查看当前所处路径(完整…

Qt中常用对话框

Qt中的对话框(QDialog)是用户交互的重要组件,用于向用户提供特定的信息、请求输入、或进行决策。Qt提供了多种标准对话框以及用于自定义对话框的类。以下将详细介绍几种常用对话框的基本使用、使用技巧以及注意事项,并附带C示例代…