Linux上安装Mysql

Linux上安装Mysql

Linux上安装Mysql

Linux上安装软件常见的几种方式:

  • 源码编译
  • 压缩包解压(一般为tar.gz)
  • 编译好的安装包(RPM、DPKG等)
  • 在线安装(YUM、APT等)

以上几种方式便捷性依次增加,但通用性依次下降,比如直接下载压缩包进行解压,这种方式一般需要自己做一些额外的配置工作,但只要掌握了方法,各个平台基本都适用,YUM虽然简单,但是平台受限,网络受限,必要的时候还需要增加一些特定YUM源。
几种安装方式最好都能掌握,原则上能用简单的就用简单的:YUM>RPM>tar.gz>源码

使用yum进行安装

  1. 查看是否已经安装了mysql
[root@localhost ~]# rpm -qa|grep mysql #无输出说明没有安装
  1. 打开网址:MySQL Yum存储库
  2. 找到对应linux的版本进行下载
    查看自己的版本:
[root@localhost ~]# cat /etc/redhat-release
CentOS Linux release 7.8.2003 (Core)

Linux上安装Mysql
3. 点击如下图红框所示
Linux上安装Mysql
4. 复制下载文件的全名:mysql80-community-release-el7-3.noarch.rpm
Linux上安装Mysql
5. 下载和安装mysql源

[root@localhost ~]# wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm

Linux上安装Mysql
如果显示wget未找到命令,则需要先安装wget:

yum -y install wget

然后再次执行上面命令

  1. 安装mysql源
[root@localhost ~]# sudo rpm -Uvh mysql80-community-release-el7-3.noarch.rpm

Linux上安装Mysql
检查是否安装成功:
执行成功后会在/etc/yum.repos.d/目录下生成两个repo文件mysql-community.repo及 mysql-community-source.repo

[root@localhost ~]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# ls -l
总用量 12
-rw-r--r--. 1 root root 2523 6月  16 2018 CentOS-Base.repo
-rw-r--r--. 1 root root 2076 4月  25 2019 mysql-community.repo
-rw-r--r--. 1 root root 2108 4月  25 2019 mysql-community-source.repo
[root@localhost yum.repos.d]# 

查看mysql相关资源

yum repolist enabled | grep "mysql.*-community.*"

Linux上安装Mysql

  1. 选择masql版本
    使用MySQL Yum Repository安装MySQL,默认会选择当前最新的稳定版本
  • 使用命令:yum repolist all | grep mysql,查看当前yum repolist的所有版本
  • 切换版本
[root@localhost ~] sudo yum-config-manager --disable mysql80-community
[root@localhost ~] sudo yum-config-manager --enable mysql57-community
  1. 安装mysql
[root@localhost ~]# sudo yum install mysql-community-server

该命令会安装MySQL服务器 (mysql-community-server) 及其所需的依赖、相关组件,包括mysql-community-client、mysql-community-common、mysql-community-libs等。安装时间会比较长

  1. 启动
[root@localhost ~]# systemctl start mysqld.service
[root@localhost ~]# systemctl status mysqld.service

Linux上安装Mysql
启动成功

  1. 停止
[root@localhost ~]# systemctl stop mysqld.service
  1. 重启
[root@localhost ~]# systemctl restart mysqld.service

修改密码及登录

初始密码
MySQL第一次启动后会创建超级管理员账号root@localhost,初始密码存储在日志文件中:

[root@localhost ~]# grep 'temporary password' /var/log/mysqld.log
2020-12-06T07:32:41.399112Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: Nd<-p!Fxt6A8

修改默认密码

# 先进行登录
[root@localhost ~]# mysql -uroot -p
Enter password: 
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'password';
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements 
#密码太弱

解决方法如下:

  • 使用复杂密码,MySQL默认的密码策略是要包含数字、字母及特殊字符;
  • 如果只是测试用,不想用那么复杂的密码,可以修改默认策略,即validate_password_policy(以及validate_password_length等相关参数),使其支持简单密码的设定,具体方法可以参考:设置密码策略
  • 修改配置文件/etc/my.cnf,添加validate_password=OFF,保存并重启MySQL
  • 修改报错后重启报错解决可参考:https://blog.csdn.net/aiyowei1106/article/details/88703746

设置编码

  1. 查看编码
mysql> SHOW VARIABLES LIKE 'character%';
  1. 设置编码
    编辑/etc/my.cnf,[mysqld]节点增加以下代码
[mysqld]
character_set_server=utf8
init-connect='SET NAMES utf8'

设置开机启动

[root@localhost ~]# systemctl enable mysqld
[root@localhost ~]# systemctl daemon-reload
上一篇:CentOS7下安装mysql8


下一篇:Mysql主从备份搭建全流程