【MYSQL】Ubuntu22.04安装 MYSQL 并使用 navicat 连接

[toc]

安装

Ubuntu 安装 mysql 的教程网上一大堆。

1
sudo apt-get install mysql-server

配置

  1. 修改配置文件
1
sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf
  1. [mysqld] 添加 skip-grant-tables

修改配置

  1. 重启数据库
1
2
3
4
5
sudo systemctl restart mysql

# 或者

sudo service mysql restart

修改用户属性

  1. 进入 mysql
1
2
3
4
sudo mysql -u root

# 切换到 mysql 数据库
use mysql;
  1. 更新用户密码
1
2
3
4
5
alter user root identified with mysql_native_password by 'Admin1234';

# 或者

update user set authentication_string='Admin1234' where user='admin';

到此就可以使用用户登录了。

1
mysql -u root -p
  1. 补充,创建其他用户
1
CREATE USER 'username'@'host' IDENTIFIED BY 'password';

授权远程使用

更改授权后,一定要执行 flush priviledges;

1
grant all on *.* to 'root'@'%';

执行上一步可能会报错,因为在 上一步 修改用户密码时,设置了地址为 localhost。所以这里不能直接授权其他主机访问,需要先把root账号的host修改为可以访问所有主机,再去授权。

  • 修改root账户
1
2
3
update user set host='%' where user='root';

flush priviledges;
  • 授权远程使用
1
2
3
grant all on *.* to 'root'@'%';

flush priviledges;
  • 重启数据库
1
2
3
4
5
sudo systemctl restart mysql

# 或者

sudo service mysql restart

使用 navicat 连接数据库

如果出现连接时报错 1130-host ... is not allowed to connect to this MySql server。则说明是服务器端口权限没开放。简单改动可直接使用ufw命令。如下所示:

sudo ufw allow 3306

如下图所示:

  • 连接名:随便起名,用来区分连接的数据库
  • 主机:192.168.0.102 为虚拟机的ip地址
  • 端口:3306,mysql默认端口
  • 用户名:root
  • 密码:密码

navicat


【MYSQL】Ubuntu22.04安装 MYSQL 并使用 navicat 连接
https://hodlyounger.github.io/B_Code/数据库/MYSQL/【MYSQL】安装 MYSQL 并使用 navicat 连接/
作者
mingming
发布于
2023年10月27日
许可协议