Linux在线yum方式安装mysql5.7(适用于mysql8.0)

Linux下软件常见部署方式有三种:yum安装、rpm安装以及编译安装。由于离线、编译需要先下载多个文件再安装,步骤较多,所以整理了一下在线安装mysql的方法,文中系统为CentOS7.9版本。

1.配置好yum源,包括epel源

wget -qO /etc/yum.repos.d/epel.repo http://mirrors.myhuaweicloud.com/repo/epel-7.repo
yum makecache
yum install epel-release -y >/dev/null 2>&1
yum repolist all | grep mysql
#如果输入后没有反应,则表示本地还没有mysql的源,需要去官网下载了。

使用官方yum仓库,官方下载链接

Linux在线yum方式安装mysql5.7(适用于mysql8.0)
Linux在线yum方式安装mysql5.7(适用于mysql8.0)
wget https://dev.mysql.com/get/mysql80-community-release-el7-7.noarch.rpm
yum install mysql80-community-release-el7-7.noarch.rpm

2. 生成yum源缓存并查看mysql版本

[root@localhost ~]# yum makecache
[root@localhost ~]# yum repolist all | grep mysql
mysql-cluster-7.5-community/x86_64           MySQL Cluster 7.5 C disabled
mysql-cluster-7.5-community-source           MySQL Cluster 7.5 C disabled
mysql-cluster-7.6-community/x86_64           MySQL Cluster 7.6 C disabled
mysql-cluster-7.6-community-source           MySQL Cluster 7.6 C disabled
mysql-cluster-8.0-community/x86_64           MySQL Cluster 8.0 C disabled
mysql-cluster-8.0-community-debuginfo/x86_64 MySQL Cluster 8.0 C disabled
mysql-cluster-8.0-community-source           MySQL Cluster 8.0 C disabled
mysql-connectors-community/x86_64            MySQL Connectors Co enabled:    206
mysql-connectors-community-debuginfo/x86_64  MySQL Connectors Co disabled
mysql-connectors-community-source            MySQL Connectors Co disabled
mysql-tools-community/x86_64                 MySQL Tools Communi enabled:     94
mysql-tools-community-debuginfo/x86_64       MySQL Tools Communi disabled
mysql-tools-community-source                 MySQL Tools Communi disabled
mysql-tools-preview/x86_64                   MySQL Tools Preview disabled
mysql-tools-preview-source                   MySQL Tools Preview disabled
mysql57-community/x86_64                     MySQL 5.7 Community disabled
mysql57-community-source                     MySQL 5.7 Community disabled
mysql80-community/x86_64                     MySQL 8.0 Community enabled:    367
mysql80-community-debuginfo/x86_64           MySQL 8.0 Community disabled
mysql80-community-source                     MySQL 8.0 Community disabled

从enable状态来看,默认启用的是最新8.0版本,如果想要使用5.7版本,需要使用到YUM 管理工具包,此包提供了 yum-config-manager 命令工具:

[root@localhost ~]# yum -y install yum-utils
[root@localhost ~]# yum-config-manager --disable mysql80-community
[root@localhost ~]# yum-config-manager --enable mysql57-community

此时查看mysql5.7版本已经被启用了

[root@localhost ~]# yum repolist enabled |grep mysql
mysql-connectors-community/x86_64       MySQL Connectors Community           206
mysql-tools-community/x86_64            MySQL Tools Community                 94
mysql57-community/x86_64                MySQL 5.7 Community Server           624

3.安装MySql并启用

安装Mysql

yum install -y  mysql-community-server    #视网络情况而定,需要等待

查看版本

Linux在线yum方式安装mysql5.7(适用于mysql8.0)

设置开机自启并启动

systemctl start mysqld
systemctl enable mysqld
Linux在线yum方式安装mysql5.7(适用于mysql8.0)

4. 初始化mysql

  • 在 MySQL 服务器初始启动时,如果服务器的数据目录为空,则会发生以下情况:
    •   MySQL 服务器已初始化
    •   在数据目录中生成SSL证书和密钥文件
    •   安装并启用该 validate_password 插件
    •   将创建一个超级用户 帐户’root’@‘localhost’。并会设置超级用户的密码,将其存储在错误日志文件/var/log/mysqld.log中
 grep 'temporary password' /var/log/mysqld.log

我们可以用上述临时密码登陆mysql,但是自从mysql5.7版本之后自带了安全配置向导命令mysql_secure_installation,下面我们将以此方式来进行

  • 运行mysql_secure_installation会执行几个设置:
    • 为root用户设置密码
    • 删除匿名账号
    • 取消root用户远程登录
    • 删除test库和对test库的访问权限
    • 刷新授权表使修改生效
[root@localhost ~]# mysql_secure_installation

Securing the MySQL server deployment.

Enter password for user root:                #设置root密码,需要大小写英文+数字+特殊符号
The 'validate_password' plugin is installed on the server.
The subsequent steps will run with the existing configuration
of the plugin.
Using existing password for root.

Estimated strength of the password: 100
Change the password for root ? ((Press y|Y for Yes, any other key for No) : y

New password:

Re-enter new password:

Estimated strength of the password: 100
Do you wish to continue with the password provided?(Press y|Y for Yes, any other key for No) : y                                         #默认选择是
By default, a MySQL installation has an anonymous user,
allowing anyone to log into MySQL without having to have
a user account created for them. This is intended only for
testing, and to make the installation go a bit smoother.
You should remove them before moving into a production
environment.

Remove anonymous users? (Press y|Y for Yes, any other key for No) : y
Success.                                        #移除匿名用户


Normally, root should only be allowed to connect from
'localhost'. This ensures that someone cannot guess at
the root password from the network.

Disallow root login remotely? (Press y|Y for Yes, any other key for No) : y
Success.                                        #关闭root远程登陆

By default, MySQL comes with a database named 'test' that
anyone can access. This is also intended only for testing,
and should be removed before moving into a production
environment.


Remove test database and access to it? (Press y|Y for Yes, any other key for No) : y
                                                #移除test数据库
 - Dropping test database...
Success.

 - Removing privileges on test database...
Success.

Reloading the privilege tables will ensure that all changes
made so far will take effect immediately.

Reload privilege tables now? (Press y|Y for Yes, any other key for No) : y
Success.                                        #重新加载用户权限表

All done!
Linux在线yum方式安装mysql5.7(适用于mysql8.0)
利用上面设置密码登陆

5.远程访问mysql数据库

创建新的MySQL用户账户,用于远程访问MySQL。

  1. MySQL默认占用的端口号为3306。使用过程中需要防火墙放行3306端口。
  2. 创建并配置远程访问MySQL的账号。
    • 依次运行以下命令,并允许远程主机使用该账号访问MySQL。
    • 账号为cnaaa、密码为PASSword123!
      • mysql> create user ‘cnaaa’@’%’ identified by ‘PASSword123!’;
      • mysql> grant all privileges on . to ‘cnaaa’@’%’with grant option;
      • mysql> flush privileges;
  3. 使用cnaaa账号远程登录MySQL。

文章来源:https://www.cnaaa.net,转载请注明出处:https://www.cnaaa.net/archives/6489

(0)
郭靖的头像郭靖
上一篇 2022年12月30日 下午4:27
下一篇 2023年1月4日 下午4:54

相关推荐

  • mysql innodb临时表btmp1文件太大

    某日生产环境(数据库实例)告警,磁盘使用率过高! 检查发现是由于mysql的data目录的ibtmp1文件太大,达到了30GB 一、ibtmp1文件是干嘛的? 就是用来存放临时表查询时的数据。 二、ibtmp1增长的原因是什么?主要与SQL有关,尤其是大量的分组聚合,排序,join查询SQL.通常如下情况会造成iptmp1上涨: 查询语句会先查询temp_t…

    2023年12月18日
    64500
  • 数据库压力测试

    一、前言 在前面的压力测试过程中,主要关注的是对接口以及服务器硬件性能进行压力测试,评估请求接口和硬件性能对服务的影响。但是对于多数Web应用来说,整个系统的瓶颈在于数据库。 原因很简单:Web应用中的其他因素,例如网络带宽、负载均衡节点、应用服务器(包括CPU、内存、硬盘、连接数等)、缓存,都很容易通过水平的扩展(俗称加机器)来实现性能的提高。而对于MyS…

    2023年3月21日
    48800
  • MySQL 常用脚本

    1.导出整个数据库   2.导出一个表   3.导出一个数据库结构 4.导入数据库  

    2023年4月25日
    63600
  • 索引–加快MySQL查询

    1.索引的描述 索引在MySQL中也叫做”键”,保存着数据位置的信息; 其作用是为了加快数据库的查询速度; 实际上,索引也是一张表,该表保存了主键与索引字段,并指向实体表的记录。 2.索引的使用 添加索引 #案例 主键会自动创建索引,外键约束也会自动创建索引 删除索引 #案例 添加联合索引 语法 联合索引又叫复合索引,是MySQL的I…

    2022年8月17日
    60000
  • MySQL配置文件参数详解

    设定MySQL事务是否自动提交,1表示立即提交,0表示需要显式提交。作用范围为全局或会话,可用于配置文件中(但在5.5.8之前的版本中不可用于配置文件),属于动态变量。 设定MySQL服务器是否为存储例程的创建赋予其创建存储例程上的EXECUTE和ALTER ROUTINE权限,默认为1(赋予此两个权限给其创建者)。作用范围为全局。 当MySQL的主线程在短…

    2022年8月16日
    65400

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

在线咨询: QQ交谈

邮件:712342017@qq.com

工作时间:周一至周五,8:30-17:30,节假日休息

关注微信