前言
MySQL 版本说明
MySQL Enterprise Edition: Mysql 企业版本,包含了最新的特性和管理工具,以及可以提供技术支持(收费)。
MySQL Cluster CGE: 一个用于高吞吐量快速、稳定的访问数据的开源事务数据库,它包含了 MySQL Cluster、MySQL Enterprise Edition、MySQL Cluster Manager 的功能。
MySQL Community (GPL):遵循GPL开源协议的MySQL版本,平常我们使用的大多数遵循这个协议下的社区版(免费)
MySQL Installer: 是一个安装管理程序,因为 MySQL 家族包括了许多产品,所以提供了一个统一管理下载的工具。
MySQL Community Server: MySQL Community (GPL)下的开源社区版本,是使用的数据库开源版本(免费)。
Mysql Workbench: 类似 Navicat 是个图形界面 UI 工具,可以实现远程Mysql数据库访问。
参考文档:
- CentOS 7 常用命令&方法
- CentOS 7 安装 MySQL 5 并设置开机自启动
- 通过 Docker 部署 MySQL
1、官方网站
下载地址
示例使用的安装包
2、安装部署
2.1、环境说明
CentOS 版本:CentOS Linux release 7.9.2009 (Core)
CentOS 安装包:CentOS-7-x86_64-Minimal-2009.iso
MySQL 版本:8.0.32
MySQL 安装包:mysql-8.0.32-1.el7.x86_64.rpm-bundle.tar
2.2、卸载&安装依赖
安装新版 MySQL 之前,我们需要将系统自带的 mariadb-lib 卸载
[root@localhost ~]# rpm -qa|grep mariadb
mariadb-libs-5.5.68-1.el7.x86_64
[root@localhost ~]# yum -y remove mariadb-libs-5.5.68-1.el7.x86_64
需要依赖 perl-Module-Install.noarch、libaio、net-tools 这些服务,示例使用的 CentOS 7 镜像是最小安装,因此需要提前安装好
yum install -y perl-Module-Install.noarch libaio net-tools
不提前安装依赖,安装 MySQL 服务的时候也会提示的缺少依赖的
[root@localhost ~]# rpm -ivh mysql-community-server-8.0.32-1.el7.x86_64.rpm
warning: mysql-community-server-8.0.32-1.el7.x86_64.rpm: Header V4 RSA/SHA256 Signature, key ID 3a79bd29: NOKEY
error: Failed dependencies:
/usr/bin/perl is needed by mysql-community-server-8.0.32-1.el7.x86_64
mysql-community-client(x86-64) >= 8.0.11 is needed by mysql-community-server-8.0.32-1.el7.x86_64
mysql-community-common(x86-64) = 8.0.32-1.el7 is needed by mysql-community-server-8.0.32-1.el7.x86_64
mysql-community-icu-data-files = 8.0.32-1.el7 is needed by mysql-community-server-8.0.32-1.el7.x86_64
net-tools is needed by mysql-community-server-8.0.32-1.el7.x86_64
perl(Getopt::Long) is needed by mysql-community-server-8.0.32-1.el7.x86_64
perl(strict) is needed by mysql-community-server-8.0.32-1.el7.x86_64
2.3、安装 MySQL 8
解压安装包
tar -xf mysql-8.0.32-1.el7.x86_64.rpm-bundle.tar
# 解压出来的文件目录如下
mysql-community-client-8.0.32-1.el7.x86_64.rpm
mysql-community-client-plugins-8.0.32-1.el7.x86_64.rpm
mysql-community-common-8.0.32-1.el7.x86_64.rpm
mysql-community-debuginfo-8.0.32-1.el7.x86_64.rpm
mysql-community-devel-8.0.32-1.el7.x86_64.rpm
mysql-community-embedded-compat-8.0.32-1.el7.x86_64.rpm
mysql-community-icu-data-files-8.0.32-1.el7.x86_64.rpm
mysql-community-libs-8.0.32-1.el7.x86_64.rpm
mysql-community-libs-compat-8.0.32-1.el7.x86_64.rpm
mysql-community-server-8.0.32-1.el7.x86_64.rpm
mysql-community-server-debug-8.0.32-1.el7.x86_64.rpm
mysql-community-test-8.0.32-1.el7.x86_64.rpm
安装 MySQL 8,注意安装顺序,顺序不对会提示缺少依赖(可以有暴力方式,直接全部安装,但是不推荐!)
rpm -ivh mysql-community-icu-data-files-8.0.32-1.el7.x86_64.rpm
rpm -ivh mysql-community-common-8.0.32-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-plugins-8.0.32-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-8.0.32-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-8.0.32-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-8.0.32-1.el7.x86_64.rpm
测试 MySQL 服务是否安装完毕
# 查看 MySQL 服务状态
[root@localhost ~]# systemctl status mysqld
● mysqld.service - MySQL Server
Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
Active: inactive (dead)
Docs: man:mysqld(8)
http://dev.mysql.com/doc/refman/en/using-systemd.html
数据初始化
mysqld --defaults-file=/etc/my.cnf --user=mysql --initialize
查看初始化密码
[root@localhost ~]# more /var/log/mysqld.log
2023-07-05T15:03:16.202185Z 0 [System] [MY-013169] [Server] /usr/sbin/mysqld (mysqld 8.0.32) initializing of server in progress as process 185
5
2023-07-05T15:03:16.219110Z 1 [System] [MY-013576] [InnoDB] InnoDB initialization has started.
2023-07-05T15:03:17.113296Z 1 [System] [MY-013577] [InnoDB] InnoDB initialization has ended.
2023-07-05T15:03:18.243760Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: q;qe&F+if9;x
启动 MySQL 服务
systemctl start mysqld
登录客户端
mysql -uroot -p
# 安装提示输入上面获取到的密码
修改初始化密码,并配置远程访问的账号&密码
-- 修改本地用户 root 初始密码(生产环境,密码不要搞这么简单哈~ 安全第一!)
ALTER USER 'root'@'localhost' IDENTIFIED with mysql_native_password BY '123456';
flush privileges;
-- 开启远程连接
use mysql;
-- 创建用户任意远程访问。注意:远程连接 root 用户与本地 root 用户有区别
CREATE user 'root'@'%';
-- 修改密码(生产环境,密码不要搞这么简单哈~ 安全第一!)
alter user 'root'@'%' identified with mysql_native_password by '123456';
-- 给用户授权
grant all privileges on *.* to "root"@"%";
flush privileges;
安装完毕!可以通过上面创建的远程账户及密码,通过客户端进行远程访问了。
3、客户端
推荐:Navicat(最好用的肯定是这个,不过这玩意儿收费的)
免费的可以考虑:mysql-workbench-community-8.0.20-winx64.msi 官网地址 或者 DBeaver 官网地址 不过讲真的,这些是真的没有上面的好用,不过免费!
根据实际情况选择吧!
4、开机自启动
什么?还没写怎么设置开机自启动?这种安装方法最大的好处,就是开机自启动自动搞定了。不信你重启试试!文章来源:https://www.toymoban.com/news/detail-528526.html
# 查看是否开机自启动
systemctl is-enabled mysqld
# 禁止开机自启动
systemctl disable mysqld
# 允许开机自启动
systemctl enable mysqld
总结
MySQL 的部署方式很多。本人比较推荐使用 rpm 的方式部署,好处是很多东西都自动搞定了!不需要自己一步一步去搞。例如:创建用户和用户组、相关目录权限、服务注册、开机自启动配置等。坏处也是有的,例如:安装目录那些都是自动默认的、需要先安装依赖等。但是个人感觉缺点可以忍受,好处比较明显。当然也要根据实际情况考虑具体方案的!文章来源地址https://www.toymoban.com/news/detail-528526.html
到了这里,关于CentOS 7 安装 MySQL 8 并设置开机自启动的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!