Ubuntu1804 下安装 Mysql 5.7

本次操作环境为 win10+linux(vmvare),主要针对linux下安装mysql与远程登录mysql的过程操作,以方便初学者上手。

安装mysql

  1. 打开控制台,更新包列表 sudo apt update
  2. 查看mysql包信息 sudo apt-cache show mysql-serverUbuntu1804 下安装 Mysql 5.7_第1张图片
  3. ubuntu18 适配是5.7,随后直接 sudo apt install mysql-server -y 进行下载了,结束安装部分

配置mysql

  1. 此时mysql是默认已帮你开启了,可以通过 service mysql status 来查看,手动开关可以 service mysql start/stop/restart Ubuntu1804 下安装 Mysql 5.7_第2张图片
  2. 方式可以用了,当把 mysql -uroot -p 键入,你发现事情变得有意思了,然后你就应该回来了,默认密码是多少?我也不知道,但是我们可以跳过初始密码的探究,通过 sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf 在39行下添加上这一行 1,这样就不用管密码了,再顺便开启远程登录,注释掉 2Ubuntu1804 下安装 Mysql 5.7_第3张图片

创建用户

  1. 重启 mysql,直接键入 mysql ,进来了,气氛轻松了许多,现在我们可以通过 mysql.user 表来查看mysql管理的全部用户信息,其中用户密码 authentication_string 采用mysql自带的 password 函数处理,显然我们还是看不出来任何东西,但是我们可以自己修改这样的密码或者创建一个用户了。
  2. 修改密码: update mysql.user set authentication_string = password('新密码') where user = 'root';
  3. 创建用户: create user '用户名'@'%' IDENTIFIED BY '密码';

远程登录

  1. 完成上述步骤后,你就可以将mysql刚刚新添加上的那一行删掉了,重启mysql之后就可以登录root用户或是自己新创建的用户了,但是当我们开始测试远程登录时,发现root用户没办法登录,新创建的用户却可以访问,其中有两个问题

    1. mysql.user 表中有一个host字段,该字段用来限制主机访问的,root下的localhost显然只能本机访问,而新创建用时的 % 则是匹配任意主机,因此可以考虑修改root用户host字段或是自行再添加一个root用户
    2. 可能在观察 mysql.user 表时,你已经细心的发现了root用户的中plugin字段似乎和其他的用户不一样,这是因为我们刚才在安装时并没有出现提示我们设置root密码,那mysql5.7就会给root自动设置为auth_socket插件,所以,我们如果要修改root的密码,同时还要修改插件为 mysql_native_password

授权管理

  1. 完成root用户的远程登录后,一对比普通用户发现,普通用户可以看到的默认数据库只有一个,当我们需要给普通用户添加权限时,需要先使用root用户进行登录mysql,再通过 grant all privileges on 数据库名.表名 to '用户名'@'%' identified by '密码'; 数据库名与表名可以通过 * 代表任意名,如 *.*,更多细节可自行百度

谢谢能看到这里的朋友,若文中有任何的问题,望指正,如果对你有一点点帮助,希望点个赞支持一下 bye~

你可能感兴趣的:(ubuntu18.04,mysql)