MySQL安装及常见问题解决

系统环境

centOS7 、MySQL5.7.23

参考网站:https://www.jb51.net/article/113844.htm

1、安装新版mysql之前,我们需要将系统自带的mariadb-lib卸载

2、解压MySQL安装包

3、其中最简单的安装mysql-server服务,只需要安装如下4个软件包即可,我们可以使用rpm -ivh命令进行安装

    mysql-community-common-5.7.23-1.el7.x86_64.rpm

    mysql-community-libs-5.7.23-1.el7.x86_64.rpm            --(依赖于common

    mysql-community-client-5.7.23-1.el7.x86_64.rpm         --(依赖于libs

    mysql-community-server-5.7.23-1.el7.x86_64.rpm        --(依赖于clientcommon

4、接下来是初始化数据库,我们使用如下几条命令均可,效果都是一样的

    [root@5201351 ~]#mysql_install_db --datadir=/var/lib/mysql

    //必须指定datadir,执行后会生成~/.mysql_secret密码文件

    [root@5201351 ~]# mysqld --initialize           

    //新版的推荐此方法,执行生会在/var/log/mysqld.log生成随机密码

5、更改mysql数据库目录的所属用户及其所属组,然后启动mysql数据库

至此MySQL安装完成,但是此时MySQL使用还有问题,需进行如下操作

更改root账号密码

1、重置密码的第一步就是跳过MySQL的密码认证过程,方法如下:

#vim /etc/my.cnf(注:windows下修改的是my.ini)

在文档内搜索mysqld定位到[mysqld]文本段:

/mysqld(在vim编辑状态下直接输入该命令可搜索文本内容)

在[mysqld]后面任意一行添加“skip-grant-tables”用来跳过密码验证的过程,如下图所示:

2、重启MySQL

    systemctl  restart  mysqld.service

3、重启之后输入#mysql即可进入MySQL

4、接下来就是用SQL来修改root密码

    mysql> use mysql;

    mysql> update user set authentication_string=password("你的新密码") where user="root";

    mysql> flush privileges;

    mysql> quit

注:5.7版本后的MySQL的user表中的password字段改成了authentication_string。

5.编辑my.cnf,去掉刚才添加的内容,然后重启MySQL。

常见问题

一、Can't connect to MySQL server on '192.168.68.128'(10038)

解决方案:

        虚拟机未开放MySQL对应的端口;使用如下命令进行端口开放:      

永久开启3306端口:  firewall-cmd --zone=public --add-port=3306/tcp --permanent

刷新防火墙使其生效:firewall-cmd --reload 

查看系统开放的所有端口:firewall-cmd --zone=public --list-ports

二、Access denied for user 'root'@'192.168.68.1'(using password:YES)

解决方案:

        出现该问题,是因为“root”用户没有远程访问权限。使用如下命令进行权限开放

grant all privileges on *.* to 'root'@'%' identified by '123456';

就可以给所有ip都设定root登陆了。

如果授权成功,会有Query OK的提示。

然后:

flush privileges;

这个是刷新授权的意思,如果没有这句话,授权可能无法立刻生效。

三、【mysql】You must reset your password using  ALTER USER statement before executing this statement报错处理

解决方式:

1、修改用户密码

MySQL版本5.7.6版本以前用户可以使用如下命令:

       mysql>SET PASSWORD=PASSWORD(‘123456’);

MySQL版本5.7.6开始的用户可以使用如下命令:

       mysql>ALTER USER USER() IDENTIFIED BY ‘123456’;   或者:

        mysql>ALTERUSER ‘root’@’localhost’ IDENTIFIED BY ‘123456’;

2、刷新权限: flushprivileges;

安装MySQL服务启动失败解决思路

(1)cat  /var/log/mysqld.log  (默认MySQL日志的安装路径)

        cat  /var/log/mysqld.log   | grep  'ERROR'  只查看错误信息

(2)sudo  find  / -name  my.cnf     (linux下查找MySQL配置文件路径)

(3)sudo   mysql  --help   | grep   my.cnf     (linux下查找MySQL配置文件路径)

你可能感兴趣的:(MySQL安装及常见问题解决)