【MySQL】Ubuntu22.04 安装 MySQL8 数据库详解

🔥博客主页小羊失眠啦.
🎥 系列专栏《C语言》 《数据结构》 《C++》 《Linux》《MySQL》《Qt》

❤️感谢大家点赞👍收藏⭐评论✍️


一、安装目录

1.1 更新软件源

bash 复制代码
sheep@Aron:/root$ sudo apt update

1.2 安装mysql_server

bash 复制代码
sheep@Aron:/root$ sudo apt install mysql-server

1.3 安装libmysqlclient-dev

bash 复制代码
sheep@Aron:/root$ sudo apt install libmysqlclient-dev

二、配置MySQL

2.1 进入MySQL

bash 复制代码
sheep@Aron:/root$ mysql -uroot -p
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 20
Server version: 8.0.37-0ubuntu0.22.04.3 (Ubuntu)

Copyright (c) 2000, 2024, Oracle and/or its affiliates.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> 

2.2 修改密码

执行以下命令,然后运行以下 ALTER USER 命令将 root 用户的身份验证方法更改为使用密码的方法。 以下示例将身份验证方法更改为 mysql_native_password

bash 复制代码
mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '12345678';

Query OK, 0 rows affected (0.01 sec)

mysql> flush privileges;

2.3 退出MySQL

bash 复制代码
mysql> exit
Bye
sheep@Aron:/root$

2.4 以sudo权限运行mysql_secure_installation

bash 复制代码
sheep@Aron:/root$ sudo mysql_secure_installation

Securing the MySQL server deployment.

# 输入密码password
Enter password for user root: 

2.5 设置密码策略和密码

bash 复制代码
sheep@Aron:/root$ sudo mysql_secure_installation

Securing the MySQL server deployment.

# 输入密码password
Enter password for user root: 

VALIDATE PASSWORD COMPONENT can be used to test passwords
and improve security. It checks the strength of password
and allows the users to set only those passwords which are
secure enough. Would you like to setup VALIDATE PASSWORD component?

# 输入Y
Press y|Y for Yes, any other key for No: Y

There are three levels of password validation policy:

LOW    Length >= 8
MEDIUM Length >= 8, numeric, mixed case, and special characters
STRONG Length >= 8, numeric, mixed case, special characters and dictionary                  file

# 输入0
Please enter 0 = LOW, 1 = MEDIUM and 2 = STRONG: 0
Using existing password for root.

# 输入Y
Estimated strength of the password: 50 
Change the password for root ? ((Press y|Y for Yes, any other key for No) : 


# 输入密码12345678
New password: 

# 输入密码12345678
Re-enter new password: 

Estimated strength of the password: 50 
Do you wish to continue with the password provided?(Press y|Y for Yes, any other key for No) : Y
By default, a MySQL installation has an anonymous user,
allowing anyone to log into MySQL without having to have
a user account created for them. This is intended only for
testing, and to make the installation go a bit smoother.
You should remove them before moving into a production
environment.

2.6 其他设置

bash 复制代码
# 输入N
Remove anonymous users? (Press y|Y for Yes, any other key for No) : N

 ... skipping.


Normally, root should only be allowed to connect from
'localhost'. This ensures that someone cannot guess at
the root password from the network.

# 输入Y
Disallow root login remotely? (Press y|Y for Yes, any other key for No) : Y
Success.

By default, MySQL comes with a database named 'test' that
anyone can access. This is also intended only for testing,
and should be removed before moving into a production
environment.


# 输入N
Remove test database and access to it? (Press y|Y for Yes, any other key for No) : N

 ... skipping.
Reloading the privilege tables will ensure that all changes
made so far will take effect immediately.

Reload privilege tables now? (Press y|Y for Yes, any other key for No) : Y
Success.

All done! 

三、 查看MySQL

显示active表示已经在运行

bash 复制代码
sheep@Aron:/root$ sudo systemctl status mysql.service
● mysql.service - MySQL Community Server
     Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
     Active: active (running) since Thu 2024-07-18 15:19:39 CST; 4h 14min ago
   Main PID: 5806 (mysqld)
     Status: "Server is operational"
      Tasks: 38 (limit: 1891)
     Memory: 362.0M
        CPU: 1min 4.121s
     CGroup: /system.slice/mysql.service
             └─5806 /usr/sbin/mysqld

Jul 18 15:19:38 Aron systemd[1]: Starting MySQL Community Server...
Jul 18 15:19:39 Aron systemd[1]: Started MySQL Community Server.

四、登录MySQL数据库

bash 复制代码
sheep@Aron:/root$ mysql -uroot -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 21
Server version: 8.0.37-0ubuntu0.22.04.3 (Ubuntu)

Copyright (c) 2000, 2024, Oracle and/or its affiliates.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> 
相关推荐
笃行35010 小时前
金仓数据库数据安全双防线:静态存储加密与传输加密实战
数据库
笃行35011 小时前
金仓数据库物理备份实战:sys_rman 全流程演练与误覆盖抢救
数据库
笃行35011 小时前
金仓数据库逻辑备份实战:从全库导出到 Schema 替换的完整闭环
数据库
元Y亨H11 小时前
技术笔记:MySQL 字符集排序规则与大小写敏感性问题解决方案
mysql
SelectDB1 天前
阶跃星辰基于 SelectDB 构建 PB 级 Agent 可观测平台
大数据·数据库·aigc
这个DBA有点耶1 天前
GROUP BY优化全解:如何写出既不丢数据又飞快的分组查询
数据库·mysql·架构
掉头发的王富贵2 天前
【StarRocks】极限十分钟入门StarRocks
数据库·sql·mysql
Nturmoils2 天前
WHERE 条件别凭习惯写,常用查询先跑一遍
数据库
SamDeepThinking2 天前
一条UPDATE语句在MySQL 8.0中到底加了几把锁?
后端·mysql·程序员