美文网首页
ubuntu18.04下安装mysql5.7+及创建用户

ubuntu18.04下安装mysql5.7+及创建用户

作者: Zywg皓 | 来源:发表于2019-01-18 15:21 被阅读0次

    mysql5.7+安装与之前版本有一些不同,参考老的教程容易踩坑,所以我总结了一下供大家参考
    基本命令:

    sudo apt update
    sudo apt install mysql-server
    sudo netstat -tap | grep mysql
    

    与之前版本不同,5.7+安装过程中不会让你输入root密码,所以应该如何登陆mysql?

    1.你是用root账户登录的
    那么简单一条命令即可mysql -u root不需要输入密码。

    2.你不是root账户登录的
    那么方法一就行不通了,mysql会拒绝你登录。

    对于这种情况网上很多教程是采用免密模式登录mysql,然后修改密码。但其实有一种更简单的方式:
    打开下面的文件sudo vim /etc/mysql/debian.cnf里面有mysql提供的默认账户密码。
    然后登录mysql -u debian-sys-maint -p

    现在登录mysql的问题解决了,但是还有个问题,为什么root用户可以免密登录而其他用户不行?
    查看mysql下的user表我们会发现:root账户是用auth_socket登录的,密码为空,所以你是无法用密码登录的。对于auth_socket我查到的解释是:如果连接是通过unix套接字完成的,并且客户端进程的所有者与连接到mysqld时使用的用户名匹配,则身份验证成功。
    所以需要root账户才能免密登录mysql。

    然后创建一个名为ubuntu,密码为NewPassword,Host为localhost的mysql用户:

    CREATE USER 'ubuntu'@'localhost' IDENTIFIED BY 'NewPassword';
    GRANT ALL PRIVILEGES ON *.* TO 'ubuntu'@'localhost';
    FLUSH PRIVILEGES;
    

    或者修改root密码及登录方式:

    UPDATE mysql.user SET authentication_string=PASSWORD('NewPassword'), plugin='mysql_native_password' WHERE User='root' AND Host = 'localhost';
    FLUSH PRIVILEGES;
    

    之后便可用账号密码登录了。

    相关文章

      网友评论

          本文标题:ubuntu18.04下安装mysql5.7+及创建用户

          本文链接:https://www.haomeiwen.com/subject/zaendqtx.html