安装

1
2
3
4
5
6
7
8
9
# 更新
apt update -y
apt upgrade -y

# 安装最新版本,默认会启动
apt install mysql-server -y

# 验证并查看版本
mysql --version

初始化

默认情况下,MySQL 服务由 systemd 管理。您可以使用 systemctl 命令轻松启动、停止和验证 MySQL 的状态。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
systemctl stop mysql

cd /var/lib
rm -fr mysql
mkdir mysql

chown -R mysql:mysql mysql

vim /etc/mysql/mysql.conf.d/mysqld.cnf
# 不区分大小写,默认0-区分
lower_case_table_names=1

# 初始化
mysqld --initialize --user=mysql

# 启动
systemctl start mysql.service

# 查看 root 默认密码
cat /var/log/mysql/error.log

# 验证是否区分大小写,1-不区分、0-区分
mysql -u root -p
> SHOW GLOBAL VARIABLES LIKE "lower_case%"

管理

1
2
3
4
5
6
7
8
9
10
11
# 查看状态
systemctl status mysql

# 默认情况下,MySQL监听3306端口,可以使用以下命令查看:
ss -antpl | grep -i mysql

# 停止
systemctl stop mysql

# 重启
systemctl restart mysql

配置

修改root密码

1
mysql -uroot -p

连接到 MySQL shell 后,使用以下命令设置 MySQL 密码:

1
mysql> ALTER USER 'root'@'localhost' identified by 'Bowei@123';

支持远程登录

1
2
mysql> use mysql;
mysql> update user set host='%' where user='root' AND host='localhost';

接下来,运行以下命令来保存更改:

1
mysql> FLUSH PRIVILEGES;

接下来,使用以下命令退出 MySQL shell:

1
mysql> EXIT;

接下来,再次登录MySQL shell验证root密码:

1
mysql -u root -p

开启远程访问

vim /etc/mysql/mysql.conf.d/mysqld.cnf

注释掉下面两行

1
2
# bind-address          = 127.0.0.1
# mysqlx-bind-address = 127.0.0.1

安全 MySQL 安装「非必须」

接下来,最好运行 mysql_secure_installation 脚本来启用一些额外的安全功能,包括设置新的 MySQL root 密码、删除匿名用户和禁用远程 root 登录

1
mysql_secure_installation

创建数据库和用户

1
create database `bowei` default character set utf8mb4 collate utf8mb4_general_ci;

卸载

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# 1. 停止服务
systemctl stop mysql

sudo apt remove --purge mysql-*
sudo apt autoremove

dpkg --list | grep mysql

# 卸载
sudo apt purge mysql-server mysql-client mysql-common mysql-server-core-* mysql-client-core-* -y

# 删除
sudo rm -rf /var/lib/mysql

dpkg -l |grep ^rc|awk '{print $2}' |sudo xargs dpkg -P
sudo rm -rf /etc/mysql
sudo rm -rf /var/lib/mysql

问题

安装MySQL时,报错:After this operation, 243 MB of additional disk space will be used.

E: You don’t have enough free space in /var/cache/apt/archives/

解决:

1
rm -fr /var/log/*