Deepin25安装mysql8.4.5
# 解压下载的安装包 (请将文件名替换为你实际下载的版本)
tar -xvf mysql-8.4.5-linux-glibc2.28-x86_64.tar.xz -C /usr/local# 进入目标目录并创建软链接 (可选,便于管理)
cd /usr/local 创建软连接
sudo ln -s mysql-8.4.5-linux-glibc2.28-x86_64 mysql
2. 创建mysql用户和用户组
sudo groupadd mysql
sudo useradd -r -g mysql -s /bin/false mysql
初始化MySQL
# 进入MySQL目录
cd /usr/local/mysql
# 修改目录所有者
sudo chown -R mysql:mysql .
# 初始化MySQL。注意记录输出末尾的临时root密码
sudo ./bin/mysqld --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --initialize
# 初始化完成后,将数据目录的所有权归还给mysql用户
sudo chown -R mysql:mysql ./data
启动MySQL服务并修改密码
# 启动MySQL服务 (通常在support-files目录下)
sudo ./support-files/mysql.server start
# 使用临时密码登录MySQL (注意:-p后无需空格直接回车,然后粘贴临时密码)
sudo ./bin/mysql -u root -p
在MySQL Shell中,执行以下命令修改root密码(请将 '你的新密码'
替换为你想设置的强密码):
ALTER USER 'root'@'localhost' IDENTIFIED BY '你的新密码';FLUSH PRIVILEGES;exit; -- 退出MySQL Shell
此时mysql的root用户只能本地连接.创建一个可以远程连接的用户
-- 创建一个名为 'root' 但主机为 '%' 的用户
CREATE USER 'root'@'%' IDENTIFIED BY 'your_password';
-- 授予所有权限
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
-- 刷新权限
FLUSH PRIVILEGES;
配置防火墙(如有启用)
如果系统防火墙(如 firewalld
或 ufw
)是开启状态,需要开放 MySQL 的默认端口(通常是 3306)。
ufw
apt install ufw
sudo ufw allow 3306/tcp
sudo ufw reload
设置开机自启
可以将MySQL的服务脚本复制到系统服务目录,并配置开机自启
# 将mysql.server脚本复制到/etc/init.d/目录并命名为mysqld
sudo cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
# 赋予执行权限
sudo chmod +x /etc/init.d/mysqld
# 使用systemctl启用开机自启
sudo systemctl enable mysqld
# 你也可以使用以下命令手动启动、停止、重启MySQL服务
sudo systemctl start mysqld # 启动
sudo systemctl stop mysqld # 停止
sudo systemctl status mysqld # 查看状态
sudo systemctl restart mysqld # 重启
验证:重启服务,看是否开机自启动