mysql 5.7 安装 (压缩包方式 .tar.gz)

一. 卸载系统自带的mysql

安装前,我们可以检测系统是否自带安装 MySQL

rpm -qa | grep mysql

如果你系统有安装,那可以选择进行卸载:

rpm -e mysql  // 普通删除模式
rpm -e --nodeps mysql  // 强力删除模式,如果使用上面命令删除时,提示有依赖的其它文件,则用该命令可以对其进行强力删除

使用 find / -name mysql 查询mysql相关文件,并全部删除

[root@localhost local]# find / -name mysql
/run/lock/subsys/mysql
/etc/rc.d/init.d/mysql
/usr/local/mysql
/usr/local/mysql/bin/mysql
/usr/local/mysql/include/mysql
/usr/local/mysql/data/mysql

用 rm -rf 全部删除

rm -rf /run/lock/subsys/mysql ...
rm -rf 搜索出来的文件名(例如 rm -rf  /usr/local/mysql)

二. 上传文件

  • 把下载好的mysql压缩包上传到服务器

[图片上传失败...(image-954667-1595005630416)]

  • 解压文件到啊 /usr/local 目录下, 并 使用mv 命令重命名为 mysql

三. 创建mysql组合用户

  • 先执行1,2命令查看是否有对mysql进行用户分组,如果没有执行3,4命令

    1     cat /etc/group | grep mysql
    2 cat /etc/passwd | grep mysql
    3   groupadd mysql
    4   useradd -r -g mysql mysql
    
  • 对创建的用户进行mysql文件的授权

    chown -R mysql:mysql /usr/local/mysql
    
  • 创建 data文件并授权, 用来存放数据文件

    mkdir /usr/local/mmysql/data
    chown -R mysql:mysql data
    chmod 777 mysql/ 赋予最高权限(所有用户都可以使用)
    
  • vim /etc/my.cnf 修改mysql的配置文件, 配置如下

    [mysql]
    #修改默认字符集
    default-character-set=utf8
    
    [mysqld]
    basedir=/usr/lcoal/mysql
    datadir=/usr/lcoal/mysql/data
    port = 3306
    #忽略大小写
    lower_case_table_names=1
    #服务端默认字符集
    character-set-server=utf8
    #最大连接数
    max_connections=2000
    #创建数据库时默认数据引擎
    default-storage-engine=INNODB
    explicit_defaults_for_timestamp=true
    
    
  • 授权my.cnf权限

    chmod 777 /etc/my.cnf
    
  • 检查是否有libaio库

    rpm -qa|grep libaio
    
  • 没有则安装

    yum install libaio
    

四.安装mysql

  • cd /usr/local/mysql
    # 初始化MySQL
    bin/mysqld --initialize  --user=mysql  --basedir=/usr/local/mysql  --datadir=/usr/local/mysql/data #会生成root的随机密码,需记住此密码,后续登录用到
    

    执行后如下

    <img src="C:UsersallenAppDataRoamingTypora ypora-user-imagesimage-20200717234657572.png" alt="image-20200717234657572" style="zoom:150%;" />

    会生成一串的临时密码 ,后续登录用到

  • mysql环境变量&服务自启动相关配置

    • 打开profile文件,进行环境变量配置

      vim /etc/profile
      
    • 在profile文件最后加入如下语句,并保存退出profile配置文件

      export PATH=$PATH:/usr/local/mysql/bin
      source /etc/profile #使配置文件生效
      
    • 自启动相关配置

      cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld #添加MySQL到服务
      chmod +x /etc/init.d/mysqld
      chkconfig --add mysqld # 添加MySQL开机启动
      chkconfig --list 
      显示服务列表,如果看到mysqld的服务,并且3,4,5都是”on/开启 “的话则成功
      如果是off/关闭,则键入:chkconfig --level 345 mysqld on 命令
      
    • 启动&关闭&重启mysql服务的命令

      service mysqld start # 记得启动MySQL服务
      service mysqld stop
      service mysqld restart
      

五.修改密码

  • 登录

    mysql -u root -p
    password # 前面初始化的时候生成的密码
    
  • 修改密码

    set password=password("new password");# 用之前的临时密码登录成功后设置初始密码
    flush privileges;
    
  • 设置授权任何IP地址都可以登录

    GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '密码' WITH GRANT OPTION; 
    flush privileges;
    
  • 退出mysql

    exit/quit/Ctrl+D;
    

六. 修改防火墙设置,开发3306端口,远程可以连接

  • 查看防火墙开放的端口

    firewall-cmd --list-ports
    
  • 如果没有3306端口,是连接不上的,输入下面命令,使防火墙开放 3306端口(使用TCP协议的/永久开放的/公开的性质)

    firewall-cmd --zone=public --add-port=3306/tcp --permanent
    
  • 重启防火墙

    firewall-cmd --reload
    

接下来就可以进行远程连接mysql数据库了。

如果说用的阿里云或者什么有安全组的管理,还得去网站的控制台去操作一下。

注意: chownchmod 这两个命令容易混淆

  • chown 是改变拥有者以及所属组,例如
chown -R mysql:mysql mysql # 改变mysql文件的拥有者为mysql用,以及所属组mysql
  • chmod 是授权,给文件或者文件夹授予权限

    chmod 777 mysql  # 授权给mysql 所有权限



from:https://www.jianshu.com/p/541db2d4b15d

原文地址:https://www.cnblogs.com/lidabo/p/14261904.html