自学[vue+SpringCloud]-008-虚拟机中安装mysql9(单机版)


前言

在bztc110机器中安装mysql9。


一、下载

到mysql官网(https://dev.mysql.com/downloads/mysql/)下载mysql-9.0.1-linux-glibc2.28-aarch64.tar.xz。
如图:
在这里插入图片描述

二、安装

1. 上传安装包

将安装包上传到bztc110机器。
我是上传到了/root目录下,如图:
在这里插入图片描述

2. 解压

将下载的文件解压到指定目录,例如 /usr/local:

sudo tar -xvf mysql-9.0.1-linux-glibc2.28-aarch64.tar.xz -C /usr/local

如果出现错误:sudo: tar: command not found
则执行:

dnf -y install tar

3. 创建符号链接(可选)

为了方便管理,可以创建一个符号链接将 mysql-9.0.1-linux-glibc2.28-aarch64 指向更通用的目录名:

sudo ln -s /usr/local/mysql-9.0.1-linux-glibc2.28-aarch64 /usr/local/mysql

如图:
在这里插入图片描述

4. 创建 MySQL 用户和组

为了安全起见,建议为 MySQL 创建专用的用户和组:

sudo groupadd mysql
sudo useradd -r -g mysql -s /bin/false mysql

5. 初始化数据库

初始化数据库目录并设置正确的权限:

sudo mkdir /usr/local/mysql/data
sudo chown -R mysql:mysql /usr/local/mysql
cd /usr/local/mysql
sudo bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

6. 设置 MySQL 配置文件

创建 MySQL 配置文件 my.cnf:

vim /etc/my.cnf

以下内容复制到my.cnf中,根据需要调整配置,尤其是 [mysqld] 部分。例如:

[mysqld]
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
port = 3306
socket = /usr/local/mysql/mysql.sock
user = mysql
[client]
socket = /usr/local/mysql/mysql.sock

7. 设置系统服务

7.1 创建 MySQL systemd 服务文件

创建一个名为 mysql.service 的文件,并将其放置在 /etc/systemd/system/ 目录下:

sudo nano /etc/systemd/system/mysql.service

如果出现错误:sudo: nano: command not found
则执行:

dnf -y install nano

7.2 添加服务配置

在 mysql.service 文件中,添加以下内容:

[Unit]
Description=MySQL Server
After=network.target

[Service]
Type=simple
User=mysql
Group=mysql
ExecStart=/usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf
ExecStop=/usr/local/mysql/bin/mysqladmin shutdown
Restart=on-failure
RestartSec=5s

[Install]
WantedBy=multi-user.target

确保 ExecStart 和 ExecStop 路径指向你的 MySQL 二进制文件的位置,–defaults-file 指向你的 MySQL 配置文件。

7.3 重新加载 systemd 配置

保存并关闭文件后,重新加载 systemd 配置以使新的服务文件生效:

sudo systemctl daemon-reload

8. 启动 MySQL 服务

启动:

sudo systemctl start mysql

检查是否已启动:

systemctl status mysql

成功的话如图:
在这里插入图片描述

9. 设置开机自启动

sudo systemctl enable mysql

10. 设置环境变量

为了方便使用 MySQL 工具,可以将 MySQL 的 bin 目录添加到系统的 PATH 中。在 .bashrc 或 .bash_profile 文件中添加:

export PATH=$PATH:/usr/local/mysql/bin

然后加载新的配置:

source ~/.bashrc

11. 设置 MySQL 根密码

使用以下命令登录 MySQL 并设置根用户的密码:

sudo /usr/local/mysql/bin/mysql_secure_installation

12. 验证 MySQL 安装

再次验证 MySQL 是否正常工作:

mysql -u root -p

三、遇到问题

1. mysqladmin: connect to server at ‘localhost’ failed

mysqladmin: connect to server at 'localhost' failed 
error: 'Access denied for user 'root'@'localhost' (using password: NO)'

解决:

(1). kill掉mysql进程
(2). 加上目录权限
sudo chown -R mysql:mysql /usr/local/mysql-9.0.1-linux-glibc2.28-aarch64
(3). 开启免密码登陆

在【mysqld】模块下面添加:skip-grant-tables 保存退出。

vim /etc/my.cnf
(4). 重启服务
 service mysql restart
(5). 不输入密码登陆
mysql -u root -p   //不输入密码直接敲回车键
(6). 刷新规则允许外部访问
use mysql;   
update user set host = '%' where user = 'root';   
FLUSH PRIVILEGES;  
(7). 更新 mysql.user 表中的密码为null
UPDATE mysql.user SET authentication_string = NULL WHERE User = 'root';
FLUSH PRIVILEGES;
(8). 重启 MySQL 服务器

完成以上步骤后,停止并重启 MySQL 服务器,以便退出 --skip-grant-tables 模式并应用新的配置。

在【mysqld】模块下面删除:skip-grant-tables 保存退出。

vim /etc/my.cnf

重启:

sudo systemctl stop mysql
sudo systemctl start mysql
(9). 登录并设置新密码

使用无密码的 root 账户登录 MySQL:

mysql -u root

然后使用 ALTER USER 语句设置新密码:

ALTER USER 'root'@'%' IDENTIFIED BY '新密码';
(10). 使用 mysql_secure_installation 进行安全设置

最后,运行 mysql_secure_installation 工具来进一步加强 MySQL 的安全性:

sudo /usr/local/mysql/bin/mysql_secure_installation

总结

mysql安装过程中可能出现很多问题,出现问题不要着急,一个一个解决。

  • 15
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值