• Ubuntu-18.04下安装mysql


    安装mysql服务器

    1、 sudo apt-get install mysql-server 

    2、 sudo apt-get install mysql-client 

    登录问题

    安装成功后,我们会发现我们没有登录的权限。

    hhz@hhz-virtual-machine:~$ mysql -u root -p
    Enter password: 
    ERROR 1698 (28000): Access denied for user 'root'@'localhost'

    然后发现当我们输入 sudo mysql -u root -p 这个命令的时候可以登录(提示输入密码时直接回车即可),显然这不是我们想要的。

    那怎么解决这个问题呢?

    解决方案:删除root用户,然后重新创建

    1、我们先登录:

    hhz@hhz-virtual-machine:~$ sudo mysql -u root -p
    Enter password: 
    Welcome to the MySQL monitor.  Commands end with ; or g.
    Your MySQL connection id is 4
    Server version: 5.7.23-0ubuntu0.18.04.1 (Ubuntu)
    
    Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.
    
    Oracle is a registered trademark of Oracle Corporation and/or its
    affiliates. Other names may be trademarks of their respective
    owners.
    
    Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.

    2、然后查看用户:

    mysql> select user,host from mysql.user;
    +------------------+-----------+
    | user             | host      |
    +------------------+-----------+
    | debian-sys-maint | localhost |
    | mysql.session    | localhost |
    | mysql.sys        | localhost |
    | root             | localhost |
    +------------------+-----------+
    4 rows in set (0.00 sec)

    3、删除root帐号

    mysql> drop user 'root'@'localhost';
    Query OK, 0 rows affected (0.00 sec)

    4、重新创建一个root帐号

    mysql> create user 'root'@'%' identified by '123456';
    Query OK, 0 rows affected (0.01 sec)

    5、接下来我们用 quit; 命令来退出mysql,然后试试用新的帐号登录

    hhz@hhz-virtual-machine:~$ mysql -u root -p
    Enter password: 
    Welcome to the MySQL monitor.  Commands end with ; or g.
    Your MySQL connection id is 5
    Server version: 5.7.23-0ubuntu0.18.04.1 (Ubuntu)
    
    Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.
    
    Oracle is a registered trademark of Oracle Corporation and/or its
    affiliates. Other names may be trademarks of their respective
    owners.
    
    Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.

    ok,登录问题已经完美解决

    远程访问问题

    1、授权

    mysql> grant all privileges on *.* to 'root'@'%' with grant option;
    Query OK, 0 rows affected (0.00 sec)
    
    mysql> flush privileges;
    Query OK, 0 rows affected (0.01 sec)

    2、用 sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf 打开这个文件,然后将 bind-address = 127.0.0.1 改成 bind-address = 0.0.0.0 允许任何IP地址访问,如果设置多个请用逗号隔开

    3、重启服务: service mysql restart 

    4、接下来我们在windows下用Navicat来连接试试

  • 相关阅读:
    教师不能太过于追求技巧
    两个有意思的数学谜题
    终于有博客啦
    215665645555
    Python 正则表达式之 sub 和 subn函数的使用
    python中可变数据类型和不可变数据类型
    python面试题手动总结答案锦集
    如何优雅的使用python中的代码注释
    使用win32com操作woord的方法记录
    redis问题:redis-server.exe双击闪退 win10系统
  • 原文地址:https://www.cnblogs.com/hhzblogs/p/9729498.html
Copyright © 2020-2023  润新知