Centos7 首次 安装Mysql8.0

随笔记录

背景介绍:重装Centos7 系统,没有安装mysql 

目录

1. 查看否有MariaDB与MySQL

2. MySQL官网下载适用于centos7的mysql安装包

2.1 查询服务器是x86_64架构还是arm架构

2.2 查系统版本

2.3 下载适用于系统版本安装包

2.3.1 国内镜像源下载安装包

2.3.2 安装 MySQL

2.3.3 运行 MySQL 

2.3.4 初始化

2.3.5 查看默认密码

2.3.6 登录

2.3.7 重置root密码

2.3.7.1 重置密码不符合mysql8.0 策略要求

2.3.7.2 重置密码符合Mysql8.0 策略要求

2.3.7.3 查看 mysql 初始的密码策略

2.3.7.4 首先需要设置密码的验证强度等级,设置 validate_password_policy 的全局参数为 LOW 

2.3.7.5 当前密码长度为 8 ,可以设置为4位的密码:

2.3.7.6 查看修改后的密码策略

2.3.7.7 修改简单密码

2.3.7.8 重启mysql 服务后,新密码登录

2.3.8  检查是否已经设置为开机启动MySQL服务

2.3.9 Mysql 设置远程

2.3.9.1  查看mysql 连接

2.3.9.2 查看可登录mysql的host

2.3.9.3  修改Mysql 远程连接 :修改root用户的host值,并刷新mysql数据库

 2.3.9.4 Navicate 远程连接Mysql8.0 成功

2.4 官网下载,太慢


1. 查看否有MariaDBMySQL


# ​查本地是否有相应的mysql(或者先检查是否有mariadb存在)
​

[root@localhost Tools]# ps ajx|grep mariadb
210088 228505 228504 210088 pts/1    228504 S+       0   0:00 grep --color=auto mariadb
[root@localhost Tools]#
[root@localhost Tools]# ps ajx|grep mysql
210088 228537 228536 210088 pts/1    228536 S+       0   0:00 grep --color=auto mysql
[root@localhost Tools]#


注意: MariaDB是一种开源的关系型数据库管理系统(RDBMS),它是MySQL的一个分支。
它提供了与MySQL高度兼容的功能和语法,同时还具有一些额外的功能和改进

2. MySQL官网下载适用于centos7的mysql安装包

2.1 查询服务器是x86_64架构还是arm架构
# uname -m 
or 
# arch  

[root@localhost Tools]# uname -m
x86_64
[root@localhost Tools]#
[root@localhost Tools]# arch
x86_64                                       # linux 服务器 x86_64
[root@localhost Tools]#
2.2 查系统版本
[root@localhost Tools]# cat /etc/centos-release
CentOS Linux release 7.9.2009 (Core)
[root@localhost Tools]#
[root@localhost Tools]#
[root@localhost Tools]# cat /etc/redhat-release
CentOS Linux release 7.9.2009 (Core)
[root@localhost Tools]#
[root@localhost Tools]#
2.3 下载适用于系统版本安装包
2.3.1 国内镜像源下载安装包

官方的软件仓库下载速度可能较慢,建议采用国内的镜像。如果采用清华镜像,下面链接的方法:

mysql | 镜像站使用帮助 | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror

# /etc/yum.repos.d/ 路径下新建 mysql-community.repo
[root@localhost Tools]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# ls
CentOS-Base.repo       CentOS-fasttrack.repo  CentOS-Vault.repo          epel.repo
CentOS-CR.repo         CentOS-Media.repo      CentOS-x86_64-kernel.repo  epel-testing.repo
CentOS-Debuginfo.repo  CentOS-Sources.repo    docker-ce.repo
[root@localhost yum.repos.d]#
[root@localhost yum.repos.d]# vi mysql-community.repo
[root@localhost yum.repos.d]#
[root@localhost yum.repos.d]#


[root@localhost Tools]# cat  /etc/yum.repos.d/mysql-community.repo
[mysql-connectors-community]
name=MySQL Connectors Community
baseurl=https://mirrors.tuna.tsinghua.edu.cn/mysql/yum/mysql-connectors-community-el7-$basearch/
enabled=1
gpgcheck=1
gpgkey=https://repo.mysql.com/RPM-GPG-KEY-mysql-2022

[mysql-tools-community]
name=MySQL Tools Community
baseurl=https://mirrors.tuna.tsinghua.edu.cn/mysql/yum/mysql-tools-community-el7-$basearch/
enabled=1
gpgcheck=1
gpgkey=https://repo.mysql.com/RPM-GPG-KEY-mysql-2022

[mysql-8.0-community]
name=MySQL 8.0 Community Server
baseurl=https://mirrors.tuna.tsinghua.edu.cn/mysql/yum/mysql-8.0-community-el7-$basearch/
enabled=1
gpgcheck=1
gpgkey=https://repo.mysql.com/RPM-GPG-KEY-mysql-2022
[root@localhost Tools]#
2.3.2 安装 MySQL
#  yum install mysql-community-server
# 以上命令除了会安装 mysql-community-server (MySQL server),还会安装它依赖的其它软件包。

[root@localhost Tools]# yum install mysql-community-server
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: mirrors.bfsu.edu.cn
 * epel: mirrors.bfsu.edu.cn
 * extras: mirrors.bfsu.edu.cn
 * updates: mirrors.aliyun.com
mysql-8.0-community                                                 | 3.0 kB  00:00:00
mysql-connectors-community                                          | 3.0 kB  00:00:00
mysql-tools-community                                               | 3.0 kB  00:00:00
(1/3): mysql-tools-community/x86_64/primary_db                      |  98 kB  00:00:00
(2/3): mysql-8.0-community/x86_64/primary_db                        | 279 kB  00:00:00
(3/3): mysql-connectors-community/x86_64/primary_db                 | 109 kB  00:00:00
Resolving Dependencies
--> Running transaction check
---> Package mysql-community-server.x86_64 0:8.0.35-1.el7 will be installed
--> Processing Dependency: mysql-community-common(x86-64) = 8.0.35-1.el7 for package: mysql-community-server-8.0.35-1.el7.x86_64
--> Processing Dependency: mysql-community-icu-data-files = 8.0.35-1.el7 for package: mysql-community-server-8.0.35-1.el7.x86_64
--> Processing Dependency: mysql-community-client(x86-64) >= 8.0.11 for package: mysql-community-server-8.0.35-1.el7.x86_64
--> Running transaction check
---> Package mysql-community-client.x86_64 0:8.0.35-1.el7 will be installed
--> Processing Dependency: mysql-community-client-plugins = 8.0.35-1.el7 for package: mysql-community-client-8.0.35-1.el7.x86_64
--> Processing Dependency: mysql-community-libs(x86-64) >= 8.0.11 for package: mysql-community-client-8.0.35-1.el7.x86_64
---> Package mysql-community-common.x86_64 0:8.0.35-1.el7 will be installed
---> Package mysql-community-icu-data-files.x86_64 0:8.0.35-1.el7 will be installed
--> Running transaction check
---> Package mariadb-libs.x86_64 1:5.5.68-1.el7 will be obsoleted
--> Processing Dependency: libmysqlclient.so.18()(64bit) for package: 2:postfix-2.10.1-9.el7.x86_64
--> Processing Dependency: libmysqlclient.so.18(libmysqlclient_18)(64bit) for package: 2:postfix-2.10.1-9.el7.x86_64
---> Package mysql-community-client-plugins.x86_64 0:8.0.35-1.el7 will be installed
---> Package mysql-community-libs.x86_64 0:8.0.35-1.el7 will be obsoleting
--> Running transaction check
---> Package mysql-community-libs-compat.x86_64 0:8.0.35-1.el7 will be obsoleting
--> Finished Dependency Resolution

Dependencies Resolved

===========================================================================================
 Package                           Arch      Version          Repository              Size
===========================================================================================
Installing:
 mysql-community-libs              x86_64    8.0.35-1.el7     mysql-8.0-community    1.5 M
     replacing  mariadb-libs.x86_64 1:5.5.68-1.el7
 mysql-community-libs-compat       x86_64    8.0.35-1.el7     mysql-8.0-community    669 k
     replacing  mariadb-libs.x86_64 1:5.5.68-1.el7
 mysql-community-server            x86_64    8.0.35-1.el7     mysql-8.0-community     64 M
Installing for dependencies:
 mysql-community-client            x86_64    8.0.35-1.el7     mysql-8.0-community     16 M
 mysql-community-client-plugins    x86_64    8.0.35-1.el7     mysql-8.0-community    3.5 M
 mysql-community-common            x86_64    8.0.35-1.el7     mysql-8.0-community    665 k
 mysql-community-icu-data-files    x86_64    8.0.35-1.el7     mysql-8.0-community    2.2 M

Transaction Summary
===========================================================================================
Install  3 Packages (+4 Dependent packages)

Total download size: 89 M
Is this ok [y/d/N]: y                    # y
Downloading packages:
warning: /var/cache/yum/x86_64/7/mysql-8.0-community/packages/mysql-community-client-plugins-8.0.35-1.el7.x86_64.rpm: Header V4 RSA/SHA256 Signature, key ID 3a79bd29: NOKEY
Public key for mysql-community-client-plugins-8.0.35-1.el7.x86_64.rpm is not installed
(1/7): mysql-community-client-plugins-8.0.35-1.el7.x86_64.rpm       | 3.5 MB  00:00:09
(2/7): mysql-community-common-8.0.35-1.el7.x86_64.rpm               | 665 kB  00:00:00
(3/7): mysql-community-icu-data-files-8.0.35-1.el7.x86_64.rpm       | 2.2 MB  00:00:03
(4/7): mysql-community-libs-8.0.35-1.el7.x86_64.rpm                 | 1.5 MB  00:00:02
(5/7): mysql-community-libs-compat-8.0.35-1.el7.x86_64.rpm          | 669 kB  00:00:00
(6/7): mysql-community-client-8.0.35-1.el7.x86_64.rpm               |  16 MB  00:00:40
(7/7): mysql-community-server-8.0.35-1.el7.x86_64.rpm               |  64 MB  00:01:18
-------------------------------------------------------------------------------------------
Total                                                      944 kB/s |  89 MB  00:01:36
Retrieving key from https://repo.mysql.com/RPM-GPG-KEY-mysql-2022
Importing GPG key 0x3A79BD29:
 Userid     : "MySQL Release Engineering <mysql-build@oss.oracle.com>"
 Fingerprint: 859b e8d7 c586 f538 430b 19c2 467b 942d 3a79 bd29
 From       : https://repo.mysql.com/RPM-GPG-KEY-mysql-2022
Is this ok [y/N]: y                  # y
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Installing : mysql-community-common-8.0.35-1.el7.x86_64                              1/8
  Installing : mysql-community-client-plugins-8.0.35-1.el7.x86_64                      2/8
  Installing : mysql-community-libs-8.0.35-1.el7.x86_64                                3/8
  Installing : mysql-community-client-8.0.35-1.el7.x86_64                              4/8
  Installing : mysql-community-icu-data-files-8.0.35-1.el7.x86_64                      5/8
  Installing : mysql-community-server-8.0.35-1.el7.x86_64                              6/8
  Installing : mysql-community-libs-compat-8.0.35-1.el7.x86_64                         7/8
  Erasing    : 1:mariadb-libs-5.5.68-1.el7.x86_64                                      8/8
  Verifying  : mysql-community-client-plugins-8.0.35-1.el7.x86_64                      1/8
  Verifying  : mysql-community-common-8.0.35-1.el7.x86_64                              2/8
  Verifying  : mysql-community-icu-data-files-8.0.35-1.el7.x86_64                      3/8
  Verifying  : mysql-community-libs-8.0.35-1.el7.x86_64                                4/8
  Verifying  : mysql-community-client-8.0.35-1.el7.x86_64                              5/8
  Verifying  : mysql-community-libs-compat-8.0.35-1.el7.x86_64                         6/8
  Verifying  : mysql-community-server-8.0.35-1.el7.x86_64                              7/8
  Verifying  : 1:mariadb-libs-5.5.68-1.el7.x86_64                                      8/8

Installed:
  mysql-community-libs.x86_64 0:8.0.35-1.el7
  mysql-community-libs-compat.x86_64 0:8.0.35-1.el7
  mysql-community-server.x86_64 0:8.0.35-1.el7

Dependency Installed:
  mysql-community-client.x86_64 0:8.0.35-1.el7
  mysql-community-client-plugins.x86_64 0:8.0.35-1.el7
  mysql-community-common.x86_64 0:8.0.35-1.el7
  mysql-community-icu-data-files.x86_64 0:8.0.35-1.el7

Replaced:
  mariadb-libs.x86_64 1:5.5.68-1.el7

Complete!
[root@localhost Tools]#
2.3.3 运行 MySQL 
[root@localhost Tools]#
[root@localhost Tools]# systemctl start mysqld
[root@localhost Tools]#
2.3.4 初始化
# 初始化
# mysqld --initialize

[root@localhost Tools]# mysqld --initialize
[root@localhost Tools]#
[root@localhost Tools]# grep 'temporary password' /var/log/mysqld.log
2023-12-11T06:19:02.169003Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: np1bH=nX7STs
[root@localhost Tools]#
2.3.5 查看默认密码
# 查看默认密码
# localhost后面的最后的那一大串字符,就是密码,复制下来。

[root@localhost Tools]#
[root@localhost Tools]# grep 'temporary password' /var/log/mysqld.log
2023-12-11T06:19:02.169003Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: np1bH=nX7STs              # 密码:np1bH=nX7STs 
[root@localhost Tools]#


2.3.6 登录

# 登录
# mysql -uroot -p

[root@localhost Tools]# mysql -uroot -p
Enter password:             #输入 2.3.5 查询的默认密码后回车即可登录 mysql
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 10
Server version: 8.0.35

Copyright (c) 2000, 2023, Oracle and/or its affiliates.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>
2.3.7 重置root密码
2.3.7.1 重置密码不符合mysql8.0 策略要求
#安装Mysql8.0后,第一次登录执行除修改密码的相关语句会出现如下错误(如图所示):

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'yusur666';
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
mysql>
2.3.7.2 重置密码符合Mysql8.0 策略要求
# mysql 8.0 密码策略要求 
# 密码必须为8位,需要一个以上的小写字母和大写字母,需要一个以上的数字以及需要一个以上的特殊字符
# 如果登录后不修改密码,基本无法做任何操作

mysql> alter user 'root'@'localhost' identified by 'Yusur@666';
Query OK, 0 rows affected (0.02 sec)

mysql>



2.3.7.3 查看 mysql 初始的密码策略
mysql> show variables like 'validate%';
+-------------------------------------------------+--------+
| Variable_name                                   | Value  |
+-------------------------------------------------+--------+
| validate_password.changed_characters_percentage | 0      |
| 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      |
+-------------------------------------------------+--------+
8 rows in set (0.00 sec)

mysql>
2.3.7.4 首先需要设置密码的验证强度等级,设置 validate_password_policy 的全局参数为 LOW 
mysql> set global validate_password.policy=LOW;
Query OK, 0 rows affected (0.00 sec)

mysql> 
2.3.7.5 当前密码长度为 8 ,可以设置为4位的密码:
mysql> set global validate_password.length=4;
Query OK, 0 rows affected (0.00 sec)

mysql>
2.3.7.6 查看修改后的密码策略
mysql> show variables like 'validate%';
+-------------------------------------------------+-------+
| Variable_name                                   | Value |
+-------------------------------------------------+-------+
| validate_password.changed_characters_percentage | 0     |
| 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     |
+-------------------------------------------------+-------+
8 rows in set (0.01 sec)

mysql>
2.3.7.7 修改简单密码
# alter user 'root'@'localhost' identified by '<simple new password>';

mysql> alter user 'root'@'localhost' identified by 'yusur666';
Query OK, 0 rows affected (0.02 sec)

mysql>


2.3.7.8 重启mysql 服务后,新密码登录
# 重启mysql f服务,后重新登录
[root@localhost Tools]# systemctl restart mysqld.service
[root@localhost Tools]#
[root@localhost Tools]# mysql -uroot -p
Enter password:                               #输入新密码
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 8
Server version: 8.0.35 MySQL Community Server - GPL

Copyright (c) 2000, 2023, Oracle and/or its affiliates.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>
2.3.8  检查是否已经设置为开机启动MySQL服务
[root@localhost Tools]#
[root@localhost Tools]# systemctl list-unit-files|grep mysqld
mysqld.service                                enabled    # 已设置为开机启动
mysqld@.service                               disabled
[root@localhost Tools]#



# 如果没有设置为开机启动则执行

# systemctl enable mysqld.service
2.3.9 Mysql 设置远程

Naviicate 远程连接Mysql 时出错,可能因为Mysql 没有设置远程连接,仅支持本地连接

2.3.9.1  查看mysql 连接
mysql>
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
4 rows in set (0.01 sec)

mysql>
mysql> use mysql;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql>

2.3.9.2 查看可登录mysql的host
# select host, user from user; 

mysql> select host,user from user;
+-----------+------------------+
| host      | user             |
+-----------+------------------+
| localhost | mysql.infoschema |             
| localhost | mysql.session    |
| localhost | mysql.sys        |
| localhost | root             |
+-----------+------------------+
4 rows in set (0.00 sec)

mysql>


# host部分全部都是localhost,说明用户只能本地连接msyql服务
2.3.9.3  修改Mysql 远程连接 :修改root用户的host值,并刷新mysql数据库
# update user set user.host=’%'where user.user=‘root’;
# flush privileges;

mysql> update user set user.host='%' where user.user='root';
Query OK, 1 row affected (0.01 sec)
Rows matched: 1  Changed: 1  Warnings: 0

mysql>
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

mysql>
mysql> select host,user from user;
+-----------+------------------+
| host      | user             |
+-----------+------------------+
| %         | root             |
| localhost | mysql.infoschema |
| localhost | mysql.session    |
| localhost | mysql.sys        |
+-----------+------------------+
4 rows in set (0.00 sec)

mysql>
 2.3.9.4 Navicate 远程连接Mysql8.0 成功

2.4 官网下载,太慢

 注意:此处徐Oracel Accout,并登录

 到此 Centos7 第一次安装 Mysql8.0  已完成操作

  • 27
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
MySQL 8.0 OCP(1Z0-908)是MySQL数据库管理的认证考试。在这个考试中,性能优化是一个重要的考点。sys.statement_analysis视图是MySQL 8.0中提供的一个系统性能视图,用于查看规范化后的SQL语句的汇总统计信息。这个视图类似于MySQL Enterprise Monitor的“查询分析”视图,可以帮助用户分析查询的性能问题。 sys.statement_analysis视图提供了多个有用的列来帮助你分析SQL语句的性能。其中一列是max_latency,表示SQL语句在执行过程中的最大等待时间。默认情况下,输出结果按照max_latency降序排序,这可以帮助你快速找到执行时间最长的SQL语句。 除了max_latency之外,sys.statement_analysis视图还提供了其他列,如call_count(SQL语句被调用的次数),rows_sent(返回的行数),rows_examined(扫描的行数)等等。这些统计信息可以帮助你分析SQL语句的执行效率,并找出潜在的优化机会。 通过分析sys.statement_analysis视图的输出结果,你可以了解到哪些SQL语句在数据库中执行的时间最长,从而进行性能优化。你可以使用这些信息来优化查询语句的索引,重写查询语句,或者进行其他的优化措施,以提升数据库的性能。 总结起来,MySQL 8.0 OCP考试涵盖了性能优化的知识,而sys.statement_analysis视图是MySQL 8.0中用于分析SQL语句性能的一个重要工具。通过分析这个视图的输出结果,你可以找到执行时间最长的SQL语句,并进行相应的优化措施,以提升数据库的性能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值