美文网首页
MySQL设置 密码及远程访问

MySQL设置 密码及远程访问

作者: byamao1 | 来源:发表于2018-09-19 21:03 被阅读0次

    Mysql初始化root密码和允许远程访问

    1、检查和配置mysql服务

    查看mysql监听IP和端口是否正常。

    netstat -anpt
    

    Local Address如果是:::3306或者是0.0.0.0:3306,表示监听所有IP地址,这监听状态是正常。若出现127.0.0.0:3306,说明监听的本地地址,需要在mysql配置文件中将bind-address选项设置为:

    bind-address = 0.0.0.0
    

    ubuntu16中bind-address的配置文件是:

    /etc/mysql/mysql.conf.d/mysqld.cnf
    

    https://blog.csdn.net/qq_33935254/article/details/53840523
    然后重启mysql:

    systemctl restart mysql.service
    //有的可能是 mysqld.service
    

    https://jingyan.baidu.com/article/380abd0a3aef431d90192c33.html

    2、检查和配置mysql账户

    1.初始化root密码
    进入mysql数据库
    (如果无法进入,则修改/etc/my.cnf,将skip-grant-tables加入到[mysqld]后,然后重启mysqld服务。初始密码和授权完成后再注释掉)

    mysql>update user set password=PASSWORD('密码') where User='root';
    

    Mysql初始化root密码和允许远程访问

    2.授权

    新版的的mysql版本已经将创建账户和赋予权限的方式分开了

    Solution:
    创建账户:

    create user '用户名'@'访问主机' identified by '密码';
    create user 'root'@'%' identified by 'root';
    

    赋予权限:

    grant 权限列表 on 数据库 to '用户名'@'访问主机' ;(修改权限时在后面加with grant option)
    

    https://blog.csdn.net/li_0891/article/details/80915780
    例如:

    GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '密码' WITH GRANT OPTION;
    
    "*.*":第一个*代表数据库名;第二个*代表表名。这里的意思是所有数据库里的所有表都授权给用户。  
    root:授予root账号。    
    “%”:表示授权的用户IP可以指定,这里代表任意的IP地址都能访问MySQL数据库。    
    “密码”:分配账号对应的密码,这里密码自己替换成你的mysql root帐号密码。
    

    https://www.jianshu.com/p/61798dbcef58

    MySQL容器卷挂载

    https://blog.csdn.net/yan_zuoyu/article/details/80736507

    docker卷挂载

    https://my.oschina.net/piorcn/blog/324202

    相关文章

      网友评论

          本文标题:MySQL设置 密码及远程访问

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