安装 MySQL
sudo apt install mysql-server mysql-client libmysqlclient-dev
默认安装的为 MySQL8.0
查看版本
$ mysql -V
mysql Ver 8.0.40-0ubuntu0.24.04.1 for Linux on aarch64 ((Ubuntu))
启动 MySQL
sudo systemctl start mysql
查看服务状态
sudo systemctl status mysql
关闭服务
sudo systemctl stop mysql
进入数据库:
$ sudo mysql -uroot -p
修改密码
注:此时是进入mysql的命令行模式。
alter user 'root'@'localhost' identified by 'friend';
FLUSH PRIVILEGES;
exit;
sudo mysql -uroot -p
仍需要提权,直接输入密码,friend,然后按回车键即可进入mysql.
配置远程连接
因为使用Navicat远程访问mysql,所以需要修改MySQL的密码,这是MySQL的密码规则导致的。
有如下方式:
1. 先进入mysql,查看所有数据库
show databases;
2. 选择mysql数据库,use mysql;然后执行如下操作:
use mysql;
3. 允许任何IP远程连接
update user set Host='%' where User='root';
4. 设置密码规则
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'friend';
账号:root 密码:friend
5. 设置远程访问--首先进入mysql
grant all privileges on *.* to 'root'@'%' with grant option;
6. 进行指令刷新
flush privileges;
7. 退出mysql
exit;
8. 注释掉 mysqld.cnf 中 bind-address=127.0.0.1
sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf
设置成如下内容,即将其注释掉。要求会用vi或vim编辑文件和保存
#bind-address=127.0.0.1
mysqlx-bind-address = 127.0.0.1
9. 重启服务
sudo systemctl restart mysql
注:如果在设置密码规则时报这样的错误 Operation ALTER USER failed for ‘root‘@‘%‘,解决方法见本文下面的附注
注:重启服务后,可以使用 mysql -uroot -p 来进入,而不再需要sudo提权。
此时可使用 Navicat 此类工具进行连接。
设置开机自启动
sudo update-rc.d -f mysql defaults