专栏首页建站知识在RedHat Linux平台上安装MySQL 8
原创

在RedHat Linux平台上安装MySQL 8

下载安装包

到MySQL的官方网站https://www.mysql.com/downloads/上下载完整的MySQL 8社区版RPM安装包,注意选择对应的平台和操作系统版本,这里选择的是红帽Linux,CPU架构是64位的x86。这个安装包里包括的RPM包如下:

$ tar tvf mysql-8.0.25-1.el7.x86_64.rpm-bundle.tar|awk '{print $6}'mysql-community-client-8.0.25-1.el7.x86_64.rpmmysql-community-client-plugins-8.0.25-1.el7.x86_64.rpmmysql-community-common-8.0.25-1.el7.x86_64.rpmmysql-community-devel-8.0.25-1.el7.x86_64.rpmmysql-community-embedded-compat-8.0.25-1.el7.x86_64.rpmmysql-community-libs-8.0.25-1.el7.x86_64.rpmmysql-community-libs-compat-8.0.25-1.el7.x86_64.rpmmysql-community-server-8.0.25-1.el7.x86_64.rpmmysql-community-test-8.0.25-1.el7.x86_64.rpm

这些包的命名规则是packagename-version-distribution-arch.rpm,其中:

(1)packagename代表包名。

(2)version代表版本号。

(3)distribution代表linux平台。

(4)arch代表CPU类型。

例如mysql-community-server-8.0.25-1.el7.x86_64.rpm这个RPM包,mysql-community-server是包名,8.0.25-1是版本号,el7中的el代表Enterprise Linux,包括Oracle Linux、Red Hat Enterprise Linux和CentOS,7是Linux的大版本号,x86_64是CPU的类型。

         安装前先检查是否已经安装了MySQL或MariaDB

首先,检查默认的配置文件是否已经存在,命令如下:

$ ll /etc/my.cnf-rw-r--r--. 1 root root 570 Mar  6  2014 /etc/my.cnf

然后,检查是否有MySQL或MariaDB的安装包,命令如下:

$ rpm -qa|grep -i mysql$ rpm -qa|grep -i mariadbmariadb-libs-5.5.35-3.el7.x86_64

Red Hat和CentOS上通常已经安装了mariadb -libs的包,这个包需要卸载,特别是/etc/my.cnf文件,一定要先删除,如果不删除这个网站,新安装的MySQL会使用这个配置文件,届时会出现莫名其妙的错误。使用下面的命令卸载mariadb -libs包:

$ rpm -e mariadb-libs$ ll /etc/my.cnfls: cannot access /etc/my.cnf: No such file or directory

卸载了mariadb -libs的包后,/etc/my.cnf文件就一并被删除了。

                        安装RPM包

服务端大部分时候只需要安装下面5个包:

(1)mysql-community-server

(2)mysql-community-client

(3)mysql-community-libs

(4)mysql-community-common

(5)mysql-community-libs-compat

安装命令如下:

$ sudo yum install mysql-community-{server,client,common,libs}-*

客户端的安装命令如下:

$ sudo yum install mysql-community-{client,common,libs}-*

也可以把yum install替换成rpm -Uvh,但rpm -Uvh因为不能自动解决包的依赖关系的问题而更容易出错。

初始化数据库

安装完成后,先不要启动MySQL数据库,因为MySQL数据库在第一次启动时会自动进行初始化,在初始化之前要根据自己的需求对相关系统参数进行修改(默认的参数文件是/etc/my.cnf):

(1)最有可能修改的系统参数是数据文件目录datadir,这个系统参数的默认值是“/var/lib/mysql”,它通常在本地硬盘,在生产环境中通常是不合适的,可以把它改成其他实际生产中用到的目录,例如“/disk1/data”。

(2)系统参数innodb_log_file_size指定InnoDB的重做日志文件的大小,默认值是50M,对于生产环境通常也小了,第16章会说明如何计算这个系统参数的大小,这里可以把它设置成100M。

(3)系统参数innodb_data_home_dir指定InnoDB系统表空间的目录,默认值是datadir,如果有必要,也可以调整这个系统参数。

(4)系统参数innodb_log_group_home_dir指定InnoDB的重做日志文件的目录,默认值也是datadir,如果有必要,也可以调整这个系统参数。

参数文件准备好后,启动mysqld服务,命令如下:

$ sudo systemctl start mysqld

启动过程中会自动进行数据库的初始化工作,在初始化过程中会自动为超级用户root@localhost生成一个密码,可以在MySQL的错误日志里查询自动生成的密码,命令如下:

$ sudo grep 'temporary password' /var/log/mysqld.log2020-12-22T08:08:27.273629Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: otvx.-q92,/N[

使用初始密码登录MySQL数据库并修改密码,这里需要注意,如果密码里面有特殊字符,密码应用单引号或双引号括起来,命令如下:

$ sudo mysql -uroot -p’otvx.-q92,/N’mysql: [Warning] Using a password on the command line interface can be insecure.Welcome to the MySQL monitor.  Commands end with ; or \g.Your MySQL connection id is 8Server version: 8.0.25......

登录后,可以使用set password的命令修改密码:

mysql> set password='Dnihaha123!';

修改完成后使用新的密码重新登录,命令如下:

$ sudo mysql -uroot -pDnihaha123!

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 2019 MySQL8 24小时快速入门(1)

    据 db-engines.com 于2019 年9月发布的数据库排行榜,MySQL 牢牢的霸占兵器排行榜第 2 位。

    Lenis
  • 常见的Linux发行版本(Centos,redhat,Oracle Linux),常见源(YUM,NPM,PIP),常用软件

    写在前面:本文所提供的下载地址以官方的为主,各大平台的为辅.根据安全性和自己网速选择

    大大刺猬
  • mysqldump命令详解 Part 9 mysqldump命令总结

    [MySQL学习笔记] 3.mysqldump命令详解 Part 2 -备份全库

    bsbforever
  • day01.互联网架构/Linux/YUM 【大数据教程】

    day01.互联网架构/Linux/YUM 一、大型互联网架构演变历程 1. 淘宝技术这10年 1.1. 淘宝现状 高并发已经成为当前互联网企业面临的巨大挑...

    Java帮帮
  • 实战篇:手把手教你 Linux 安装 MySQL 详细教程

    安装Linux服务器可选择:Centos,Redhat,Oracle Linux。

    Lucifer三思而后行
  • 实战篇:手把手教你Linux安装Mysql(细致入微)

    安装Linux服务器可选择:Centos,Redhat,Oracle Linux。 本文配置为 Redhat 7.9 x86_64,内存2G,硬盘50G。

    Lucifer三思而后行
  • MySQL5.7 安装(Redhat)

    MySQL 是一款使用最普遍的关系型数据库管理系统(RDBMS Relational Database Management System) 。

    Python碎片公众号
  • Linux 版本 SQL Server 的快速安装

    SQL Server 2017 版本已经支持 Linux 安装了,出来了很长时间,我还没有实现过在 Linux 上面的应用,包括安装和高可用配置。本文就先尝试完...

    Lenis
  • 【DB宝67】使用yum来安装PostgreSQL13.3数据库

    PG安装方法很多,和MySQL类似,给用户提供很大的选择空间。如:RPM包安装(在线、离线)、源码编译安装、系统自带、二进制、NDB安装等。

    小麦苗DBA宝典
  • 你会搭建测试环境吗?

    王豆豆
  • MySQL 8.0.19 Linux平台安装 Part 2

    cat /data/mysql/data/mysql-error.log |grep password

    bsbforever
  • mysqldump命令详解 Part 7- -single-transaction 参数的使用

    [MySQL学习笔记] 3.mysqldump命令详解 Part 2 -备份全库

    bsbforever
  • 64位Red Hat 5.6使用yum升级PHP

    最近给一台服务器升级PHP,默认安装的系统是RedHat Linux Enterpris(企业版)5.6, 自带的PHP是5.1.6,mysql是5.0.9,但...

    知忆
  • mysqldump命令详解 Part 3-备份单表

    [MySQL学习笔记] 3.mysqldump命令详解 Part 2 -备份全库

    bsbforever
  • CentOS 8 如何安装 PHP 8.0

    我们使用 REMI 仓库在 CentOS 8 操作系统上进行 PHP 8.0 版本的安装,有两种安装方案可自由选择。

    柳公子
  • Linux/UNIX和Window平台上安装Mysql

    Linux平台上推荐使用RPM包来安装Mysql,MySQL AB提供了以下RPM包的下载地址:

    用户1685462
  • MySQL 8.0.19 Linux平台安装 Part 1

    这次为第一部分,及环境的准备,和Oracle一样,MySQL的安装也需要一些参数的设置

    bsbforever
  • CentOS 8 官方正式发布了

    CentOS 8 官方正式发布了!!!CentOS 完全遵守 Red Hat 的再发行政策,并且致力与上游产品在功能上完全兼容。CentOS 对组件的修改主要是...

    用户1278550
  • 会用Docker的人都别装了,这多简单呐

    Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器或Windows 机器上,也...

    震八方紫面昆仑侠

扫码关注云+社区

领取腾讯云代金券