数据库学习-Mysql数据库安装

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS PostgreSQL,集群系列 2核4GB
简介: 数据库学习-Mysql数据库安装

数据库研究

该系列文章主要是用来学习研究数据库相关知识,并根据学习知识做记录

数据库环境搭建


前言

数据库环境搭建;

在Centos 8 上搭建Mysql 环境


一、环境搭建


环境需要的CentOs 版本和Mysql 版本以及下载目录

环境 版本
CentoS CentOS-8.5.2111-x86_64-dvd1
MySql mysql80-community-release-el8-1.noarch.rpm


下载地址

CentoS 官网 CentoS官网

MySql 地址 Mysql官网


二、安装步骤


1.卸载Mysql 安装残留

1.1 首先用xshell远程连接到服务器

1.2 如果服务器之前安装过mysql请先卸载,我这里是用yum安装的,现在通过yum去卸载

操作步骤如下:

yum remove -y mysql
find / -name mysql //找到残留的文件,再通过rm -rf去删除对应的文件

ac3281d26b433cc24d171e47096d051d_watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5oqA5pyv6bG8,size_20,color_FFFFFF,t_70,g_se,x_16.png

2 安装Mysql

2.1 下载安装包

操作步骤如下:

wget https://dev.mysql.com/get/mysql80-community-release-el8-1.noarch.rpm
yum install mysql80-community-release-el8-1.noarch.rpm

正确环境如下


2.2 检查数据源

查看mysql源是否安装成功:yum repolist enabled | grep "mysql.*-community.*"

查询结果


2.3 禁用CentOs 自带的Mysql

如果出现No match for argument: mysql-community-server

可执行 yum module disable mysql命令

yum module disable mysql // 禁用命令

执行结果


2.4 安装MySql

yum install mysql-community-server
Is this ok [y/Y] 一直 y到底




2.5启动Mysql

启动的时候注意

启动命令

/bin/systemctl start mysqld.service//启动命令
service mysqld status //


33e330cf0213a80ac0490883059fbb77_watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5oqA5pyv6bG8,size_20,color_FFFFFF,t_70,g_se,x_16.png


2.6 修改mysql 密码

首先要获取mysql 原始密码

grep "password" /var/log/mysqld.log


605111f5b7014cd8bb5f31df15c72c73.png

2.7 登录

mysql -u root -p //输入上面生成的密码

06ebe43021d044a4b8247821190a2f43.png

2.8 修改原始密码

修改密码
一定要先修改默认密码为: Root_21root 满足它的策略,再进行下面的操作:
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'Root_root2';
Query OK, 0 rows affected (0.01 sec)
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
//查看密码策略
mysql> SHOW VARIABLES LIKE 'validate_password%';
+--------------------------------------+--------+
| Variable_name                        | Value  |
+--------------------------------------+--------+
| validate_password.check_user_name    | ON     |
| validate_password.dictionary_file    |        |
| validate_password.length             | 8      |
| validate_password.mixed_case_count   | 1      |
| validate_password.number_count       | 1      |
| validate_password.policy             | MEDIUM |
| validate_password.special_char_count | 1      |
+--------------------------------------+--------+
7 rows in set (0.02 sec)
// 修改密码长度:
mysql> set global validate_password.length=1;
Query OK, 0 rows affected (0.00 sec)
//修改密码等级:
mysql> set global validate_password.policy=0;
Query OK, 0 rows affected (0.00 sec)
// 设置成自己想要的密码:
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
Query OK, 0 rows affected (0.00 sec)
// 修改后策略
mysql> SHOW VARIABLES LIKE 'validate_password%';
+--------------------------------------+-------+
| Variable_name                        | Value |
+--------------------------------------+-------+
| validate_password.check_user_name    | ON    |
| validate_password.dictionary_file    |       |
| validate_password.length             | 4     |
| validate_password.mixed_case_count   | 1     |
| validate_password.number_count       | 1     |
| validate_password.policy             | LOW   |
| validate_password.special_char_count | 1     |
+--------------------------------------+-------+
7 rows in set (0.00 sec)


2.9 Mysql开放远程访问

创建用户

create user 'root'@'%' identified by 'root123'; //1、先创建权限记录
grant all privileges on *.* to 'root'@'%' with grant option; //2、授权
FLUSH PRIVILEGES; // 刷新权限

82beec06695ec49b52851cccad9f08be_49dbf966d54f440ab0d5ea5b68d404f5.png

2.错误解决

代码如下(示例):

1. 错误

错误
[root@localhost linux]# yum install mysql80-community-release-el8-1.noarch.rpm
Last metadata expiration check: 1:05:13 ago on Wed 12 Jan 2022 05:44:38 AM PST.
Error: 
 Problem: package mysql80-community-release-el8-1.noarch conflicts with mysql57-community-release provided by mysql57-community-release-el7-10.noarch
  - conflicting requests
  - problem with installed package mysql57-community-release-el7-10.noarch
(try to add '--allowerasing' to command line to replace conflicting packages or '--skip-broken' to skip uninstallable packages or '--nobest' to use not only best candidate packages)
解决
[root@localhost linux]# rpm -qa |grep mysql
mysql57-community-release-el7-10.noarch
[root@localhost linux]# rpm -e --nodeps mysql57-community-release-el7-10.noarch 
[root@localhost linux]# 


2. 错误

开启权限,为了navicat能够访问到此mysql(开启远程访问)

使用Navicat Premium 12连接高版本的MySQL数据库时会出现Authentication plugin ‘caching_sha2_password’ cannot be loaded的错误。

use mysql 
//查看用户的密码规则,及对应host
select user, host, plugin from user;
//修改加密规则和密码 注意:下面的 % 是对应上图的host)
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '替换成你的密码';
FLUSH PRIVILEGES;//这个一定要执行,执行命令使权限配置项立即生效。

注意 mysql8 之前的版本中加密规则是mysql_native_password,而在mysql8之后,加密规则是caching_sha2_password



三、总结


Mysql 安装的时候注意细节


参考


centos8安装mysql8.0.22教程(超详细)

linux安装mysql57-community版本

一个笨蛋的博客


MySQL 连接出现 Authentication plugin ‘caching_sha2_password‘ cannot be loaded 的解决

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
2天前
|
SQL 关系型数据库 MySQL
go语言数据库中mysql驱动安装
【11月更文挑战第2天】
13 4
|
3天前
|
SQL 关系型数据库 MySQL
go语言中安装数据库驱动
【11月更文挑战第1天】
16 5
|
8天前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比。通过具体案例,读者可以了解如何准备环境、下载源码、编译安装、配置服务及登录 MySQL。编译源码安装虽然复杂,但提供了更高的定制性和灵活性,适用于需要高度定制的场景。
29 3
|
9天前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比。
本文介绍了在 CentOS 7 中通过编译源码安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比。内容涵盖准备工作、下载源码、编译安装、配置服务、登录设置及实践心得,帮助读者根据需求选择最适合的安装方法。
17 2
|
9天前
|
监控 关系型数据库 MySQL
数据库优化:MySQL索引策略与查询性能调优实战
【10月更文挑战第27天】本文深入探讨了MySQL的索引策略和查询性能调优技巧。通过介绍B-Tree索引、哈希索引和全文索引等不同类型,以及如何创建和维护索引,结合实战案例分析查询执行计划,帮助读者掌握提升查询性能的方法。定期优化索引和调整查询语句是提高数据库性能的关键。
44 0
|
28天前
|
存储 SQL 关系型数据库
Mysql学习笔记(二):数据库命令行代码总结
这篇文章是关于MySQL数据库命令行操作的总结,包括登录、退出、查看时间与版本、数据库和数据表的基本操作(如创建、删除、查看)、数据的增删改查等。它还涉及了如何通过SQL语句进行条件查询、模糊查询、范围查询和限制查询,以及如何进行表结构的修改。这些内容对于初学者来说非常实用,是学习MySQL数据库管理的基础。
106 6
|
26天前
|
存储 关系型数据库 MySQL
Mysql(4)—数据库索引
数据库索引是用于提高数据检索效率的数据结构,类似于书籍中的索引。它允许用户快速找到数据,而无需扫描整个表。MySQL中的索引可以显著提升查询速度,使数据库操作更加高效。索引的发展经历了从无索引、简单索引到B-树、哈希索引、位图索引、全文索引等多个阶段。
58 3
Mysql(4)—数据库索引
|
28天前
|
SQL Ubuntu 关系型数据库
Mysql学习笔记(一):数据库详细介绍以及Navicat简单使用
本文为MySQL学习笔记,介绍了数据库的基本概念,包括行、列、主键等,并解释了C/S和B/S架构以及SQL语言的分类。接着,指导如何在Windows和Ubuntu系统上安装MySQL,并提供了启动、停止和重启服务的命令。文章还涵盖了Navicat的使用,包括安装、登录和新建表格等步骤。最后,介绍了MySQL中的数据类型和字段约束,如主键、外键、非空和唯一等。
64 3
Mysql学习笔记(一):数据库详细介绍以及Navicat简单使用
|
11天前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。同时,文章还对比了编译源码安装与使用 RPM 包安装的优缺点,帮助读者根据需求选择最合适的方法。通过具体案例,展示了编译源码安装的灵活性和定制性。
50 2
|
14天前
|
存储 关系型数据库 MySQL
MySQL vs. PostgreSQL:选择适合你的开源数据库
在众多开源数据库中,MySQL和PostgreSQL无疑是最受欢迎的两个。它们都有着强大的功能、广泛的社区支持和丰富的生态系统。然而,它们在设计理念、性能特点、功能特性等方面存在着显著的差异。本文将从这三个方面对MySQL和PostgreSQL进行比较,以帮助您选择更适合您需求的开源数据库。
60 4
下一篇
无影云桌面