ubuntu20.04安装MySQL8,修改数据目录并配置远程

本文详细介绍了在Ubuntu20.04系统上安装MySQL8,包括更新源、安装、配置数据目录、设置远程访问权限,以及解决端口不通问题的过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、安装

1.更新源-先切换root

apt-get update -y
apt-get upgrade -y

2.安装mysql

apt-get install mysql-server -y

源包默认版本是MySQL8

二、更新配置文件

1. 迁移数据目录

mv /var/lib/mysql /data/

2.更新mysql配置文件

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

# 在[mysqld] 部分中找到并修改
datadir = /data/mysql
bind-address = 0.0.0.0

注:

  1. datadir 是数据目录
  2. bind-address = 0.0.0.0是配置允许远程访问

3.修改启动文件

vim /etc/apparmor.d/usr.sbin.mysqld

:%s/\/var\/lib/\/data/g

注:

  1. “:%s//var/lib//data/g”格式是 :%s/被替换的内容/新内容/g 。作用是将/var/lib全量替换为/data,注意要替换中包含的/需要加\转译

4.重启

systemctl restart apparmor
systemctl restart mysql

三、登录sql环境修改配置

1.登录并检查数据目录

mysql
SHOW VARIABLES LIKE 'datadir';

注:

  1. ubuntu20.04安装mysql8未配置前可以直接登录,不需要密码
  2. 确认输出的数据目录路径是不是你需要的

2.配置密码

use mysql;
ALTER USER 'root'@'localhost' IDENTIFIED WITH caching_sha2_password BY 'xinmima';

注:

  1. 如果你root对应的host已经改成%时,这里的’root’@‘localhost’需要改成’root’@‘%’
  2. MySQL 8 中的 mysql_native_password 和 sha256_password 插件已经被标记为弃用,并且将在未来的版本中移除。取而代之的是 caching_sha2_password 插件,所以要带上 WITH caching_sha2_password
  3. xinmima为密码

3.配置远程权限

update user set host='%'  where user='root';
FLUSH PRIVILEGES;
quit

4. 重启mysql

systemctl restart mysql

四、检查

1.远程测试

mysql -h ip -u root -P 3306 -p

五、问题

1.端口不通

1.1检查防火墙

 systemctl status ufw
 systemctl status firewalld
 systemctl status iptable

注:

  1. 如果防火墙是开启的,那得防火墙放通3306

1.2检查hosts.deny

cat /etc/hosts.deny

注:

  1. 检查hosts.deny是不是拦截了3306端口或者是不是拦截了全部。
  2. 如果是拦截了全部需要通过/etc/hosts.allow加白

1.3检查配置文件

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

注:

  1. 找到bind-address检查是否=0.0.0.0,或者是否bind-address被注释,配置是否在[mysqld]里面
  2. 检查是否port=3306
  3. 修改完配置文件,需要重启数据库
### 如何在Ubuntu 20.04安装MySQL #### 安装前准备 确保服务器是最新的软件包列表和已安装的最新版本。这可以通过运行以下命令来完成: ```bash sudo apt update && sudo apt upgrade -y ``` #### 步骤一:添加MySQL官方源 为了获得最新的稳定版MySQL,建议直接使用MySQL官方网站提供的APT仓库而不是默认的Ubuntu库中的旧版本。 首先下载添加MySQL APT仓库密钥到系统中: ```bash wget https://dev.mysql.com/get/mysql-apt-config_0.8.17-1_all.deb sudo dpkg -i mysql-apt-config_0.8.17-1_all.deb ``` 当提示配置新添加的存储库时,在交互界面里选择适合的操作系统版本以及想要安装的产品系列[^4]。 #### 步骤二:更新本地数据库索引 再次刷新可用软件包的信息以便包含来自新增加的MySQL官方源的数据: ```bash sudo apt-get update ``` #### 步骤三:执行MySQL安装过程 现在可以安全地继续安装MySQL服务端组件了: ```bash sudo apt install mysql-server ``` 在此期间会自动处理依赖关系且设置必要的启动脚本和服务文件[^4]。 #### 步骤四:强化安全性配置 初次安装完成后应当立即运行`mysql_secure_installation`工具来进行一些基本的安全措施调整,比如移除匿名账户、禁用远程root登录等操作[^4]: ```bash sudo mysql_secure_installation ``` 按照屏幕上的指示完成剩余部分即可成功部署一个相对更加安全可靠的MySQL实例于Ubuntu 20.04之上。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值