安装mysql
sudo apt install mysql-server mysql-client
设置密码
-
sudo mysql_secure_installation
进行安全配置,按提示操作即可 -
sudo mysql -u root -p
接着输入ubuntu root用户的密码,然后系统会等待输入mysql密码,此时的mysql密码未生效,直接enter或输入任意值均可(注意:第一次登录时,必须要sudo权限才能登录) -
用
SELECT user,authentication_string,plugin,host FROM mysql.user;
语句可以看到root用户的au_string字段为空
-
接下来执行
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '这里写刚刚设置的密码';
。目前不太清楚前后两次设置的密码不同会出现什么情况 -
重新执行
SELECT user,authentication_string,plugin,host FROM mysql.user;
语句,发现内容更新了
-
更新权限信息
FLUSH PRIVILEGES;
-
重新登录发现,不需要再sudo权限了,而且必须要输入刚设置好的密码才能登录
开启远程登录
-
首先编辑/etc/mysql/mysql.conf.d/mysqld.cnf,注释掉
bind-address 127.0.0.1
-
重启mysql服务
service mysql restart
,让配置文件生效! -
进入mysql数据库,执行
grant all on *.* to root@'%' identified by '远程登录密码' with grant option;
。这个远程密码只要符合密码安全等级(前面mysql_secure_installation这只的)就行,不需要和本地密码一致。但是远程登录用户的权限有多高,目前还未研究。
-
随后再刷新一下权限
FLUSH PRIVILEGES;
,即可退出 -
在物理机使用navicat测试通过