前言

仅适用于mysql 5.7.24 且机器之前未安装过mysql的情况!请知悉。

安装前准备

  • 检查是否已经安装过mysql,执行命令
  • rpm -qa | grep mysql
  • image.png
  • 从官网下载是用于Linux的Mysql安装包
  • wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz
  • image.png
  • 也可以直接到mysql官网选择其他版本进行下载。

开始安装

  • 在执行wget命令的目录下或你的上传目录下找到Mysql安装包(博主的在/usr/local下):mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz
  • 执行解压命令:tar xzvf mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz
  • image.png
  • 解压完成后,可以看到当前目录下多了一个解压文件
  • image.png
  • 移动该文件到/usr/local/mysql (注意,如非必要,不要移到别的路径,不然后续会有很多问题)执行移动命令:mv mysql-5.7.24-linux-glibc2.12-x86_64 /usr/local/mysql
  • image.png
  • 在/usr/local/mysql目录下创建data目录:mkdir /usr/local/mysql/data,进入mysql 文件夹可直接执行mkdir data
  • image.png
  • 创建mysql 的用户组和用户(这样更安全,可省略)
    • groupadd mysql
    • useradd -g mysql mysql
    • image.png
  • 更改mysql目录下所有的目录及文件夹所属的用户组和用户,以及权限
    • chown -R mysql:mysql /usr/local/mysql 给与mysql 写的权限
    • chown -R root /usr/local/mysql 改变mysql目录的所属用户
    • chgrp -R mysql /usr/local/mysql 改变mysql目录的所属组
    • chown -R mysql /usr/local/mysql/data 改变data目录的所属用户,此目录用于存放数据库
  • 编辑配置文件my.cnf,添加配置如下:vim /etc/my.cnf
[client]
# 设置mysql客户端默认字符集
default-character-set=utf8
 
[mysqld]
# 设置3306端口
port = 3306
# 设置mysql的安装目录
basedir=/usr/local/mysql
# 设置 mysql数据库的数据的存放目录,MySQL 8+ 不需要以下配置,系统自己生成即可,否则有可能报错
datadir=/usr/local/mysql/data
# 允许最大连接数
max_connections=100
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
  • 进入bin 文件夹:cd /usr/local/mysql/bin 初始化mysql:mysqld --initialize
  • image.png
  • 记住这个密码
  • image.png
  • 启动mysql服务器:/usr/local/mysql/support-files/mysql.server start
  • image.png
  • 添加软连接,并重启mysql服务
    • ln -s /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
    • ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql
    • service mysql restart
  • image.png
  • 登录Mysql:mysql -u root -p
  • image.png
  • 出现上图是缺少libncurses.so.5,执行yum -y install libncurses*
  • image.png
  • 输入刚刚记下的密码
  • 修改密码:set password for root@localhost = password('password');
  • 开放远程连接(否则本地连接不到)
use mysql;
update user set user.Host='%' where user.User='root';
flush privileges;
  • 设置开机自动启动

    • 将服务文件拷贝到init.d下,并重命名为mysql:cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
    • 赋予可执行权限: chmod +x /etc/init.d/mysqld
    • 添加服务:chkconfig --add mysqld
    • 显示服务列表:chkconfig --list
      image.png
  • 如果是虚拟机,还需开启系统防火墙相应端口以便外部连接

    • 如果使用默认端口3306
    • firewall-cmd --permanent --add-service=mysql
    • 修改过端口
    • firewall-cmd --add-port=修改的端口/tcp --permanent
  • 重启防火墙,firewall-cmd --reload

结束语

此处只是本人的一个安装过程记录,遇到的问题较少,超出本博客之外的情况请善于利用搜索引擎解决问题,如有疑问,可留言。博主会尽量帮忙解决。