CentOS6下安装MySQL5.7.25二进制版本 - 图1

    CentOS下安装MySQL5.7.25步骤如下
    1、MySQL官网下载5.7.25的Linux 64位二进制版本
    CentOS6下安装MySQL5.7.25二进制版本 - 图2
    2、SFTP方式上传MySQL二进制安装包并解压
    [root@localhost ~]# tar -zxvf mysql-5.7.25-linux-glibc2.12-x86_64.tar.gz
    image.png
    3、创建/usr/local/mysql并将
    [root@localhost ~]# mkdir /usr/local/mysql
    [root@localhost ~]# mv mysql-5.7.25-linux-glibc2.12-x86_64/* /usr/local/mysql
    CentOS6下安装MySQL5.7.25二进制版本 - 图4

    4、创建mysql用户以及data目录
    [root@localhost mysql]# useradd -s /sbin/nologin -M mysql
    [root@localhost mysql]# mkdir data
    [root@localhost mysql]# pwd
    /usr/local/mysql
    [root@localhost mysql]# chown -R mysql.mysql ./
    CentOS6下安装MySQL5.7.25二进制版本 - 图5
    5、接下来初始化数据库安装
    [root@localhost ~]# cd /usr/local/mysql/bin
    [root@localhost bin]# ./mysqld —initialize —user=mysql —basedir=/usr/local/mysql/ —datadir=/usr/local/mysql/data/
    CentOS6下安装MySQL5.7.25二进制版本 - 图6
    6、设置mysql服务开机自启动
    [root@localhost mysql]# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
    [root@localhost mysql]# chmod +x /etc/init.d/mysqld
    [root@localhost mysql]# chkconfig —add mysqld
    [root@localhost mysql]# chkconfig —list mysqld
    mysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off
    [root@localhost mysql]# service mysqld status
    ERROR! MySQL is not running
    [root@localhost mysql]# service mysqld start
    image.png
    可以看到mysql服务启动失败
    7、这时修改/etc/my.cnf并创建/var/run/mysqld目录
    [root@localhost bin]# vi /etc/my.cnf
    [mysqld]
    datadir=/usr/local/mysql/data
    socket=/var/lib/mysql/mysql.sock
    user=mysql
    # Disabling symbolic-links is recommended to prevent assorted security risks
    symbolic-links=0
    [mysqld_safe]
    log-error=/var/log/mysqld.log
    pid-file=/var/run/mysqld/mysqld.pid
    接下来chown -R mysql.mysql /var/lib/mysql/
    重启mysqld服务
    CentOS6下安装MySQL5.7.25二进制版本 - 图8
    8、 环境变量配置
    将mysql的bin目录加入PATH环境变量,
    编辑 /etc/profile文件:[root@localhost mysql]# vim /etc/profile
    PATH=$PATH:/usr/local/mysql/bin
    export PATH
    执行命令使其生效:[root@localhost mysql]# source /etc/profile
    用 export 命令查看PATH值:[root@localhost mysql]# echo $PATH
    CentOS6下安装MySQL5.7.25二进制版本 - 图9
    9、常见问题
    1)[root@localhost ~]# mysql
    ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/tmp/mysql.sock’ (2)
    解决办法:
    [root@localhost ~]# ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock
    2)[root@localhost ~]# mysql
    ERROR 1045 (28000): Access denied for user ‘root’@’localhost’ (using password: NO)
    解决办法:my.cnf中[mysqld]下面加skip-grant-tables
    CentOS6下安装MySQL5.7.25二进制版本 - 图10
    然后重启mysqld服务,接下来修改mysql表中root用户密码
    mysql>use mysql;
    mysql> update user set authentication_string = password(‘admin@123’) where user = ‘root’
    mysql>flush privileges;
    CentOS6下安装MySQL5.7.25二进制版本 - 图11
    也可以用SET PASSWORD = PASSWORD(‘Admin@2019’);设置密码
    修改root密码后my.cnf中[mysqld]下面再去掉skip-grant-tables,恢复原始的状态,然后重启mysqld服务,这时用mysql -uroot -p”admin@123”本地就可以登录了
    CentOS6下安装MySQL5.7.25二进制版本 - 图12
    3)使用Navicat远程登录MySQL(前提:防火墙限制已放开)
    给root授予在任意主机(%)访问任意数据库的所有权限
    mysql>grant all privileges on . to ‘root’@’%’ identified by ‘admin@123’ with grant option;
    mysql> flush privileges;
    #为密码为 admin@123 、IP(%)任意的 root 用户授权。(%:模糊查询,所有 IP 都可以,,可指定其他主机 IP;by 后的 ‘admin@123 为密码
    CentOS6下安装MySQL5.7.25二进制版本 - 图13
    CentOS6下安装MySQL5.7.25二进制版本 - 图14
    CentOS6下安装MySQL5.7.25二进制版本 - 图15