mysql8.0 在linux上的安装和配置,很全面,很详细

本文详细介绍了在Linux上安装MySQL 8.0的步骤,包括从官网下载、解压、创建用户和用户组、配置权限、初始化数据目录、修改配置文件、启动及免密登录数据库等。同时,还解决了启动过程中遇到的问题,如数据目录找不到、权限错误等,并讲解了如何通过Navicat进行远程连接,确保MySQL服务正常运行。

首先在官网下载 http://www.mysql.com下载MySQL。

也给大家提供了我已经存在百度网盘上的安装包。
链接:https://pan.baidu.com/s/19vI8C9qYvWsLIbwaI6x_yA
提取码:x09c

下载下来之后,然后解压,下面是我的例子。

解压之后,会有一个这样的包 mysql-8.0.19-linux-glibc2.12-x86_64.tar.xz

将该包放到 /usr/local 目录下,怎么进入该目录?这样进入:cd /usr/local

然后在/usr/local目录下 使用命令 tar -xvf mysql-8.0.19-linux-glibc2.12-x86_64.tar.xz 解压。

解压之后,使用下面命令重命名:

mv mysql-8.0.19-linux-glibc2.12-x86_64 mysql,将文件夹mysql-8.0.19-linux-glibc2.12-x86_64重命名为mysql 。

进入新命名的 mysql文件夹,然后建立data文件夹。通过命令 mkdir data 建立data文件夹。

使用下面的命令创建用户和用户组
groupadd mysql
useradd -g mysql mysql
将/usr/local/mysql 目录修改用户权限,没修改之前默认是root权限,如下图:

在这里插入图片描述
使用下面的命令修改用户usr/local/mysql所属的用户权限
chown -R mysql:mysql /usr/local/mysql
修改之后是这样的:
在这里插入图片描述

mysql默认的配置文件是 etc/my.cnf。
接下来进入 cd/etc/,使用 vim my.cnf 打开 my.cnf 这个文件。

在里面输入:


[client]
port=3306
socket=/usr/local/mysql/data/mysql
### 如何在 Linux 系统上配置 MySQL 8.0 以允许远程连接 要在 Linux 上成功配置 MySQL 8.0 并实现远程访问,需完成以下几个核心操作: #### 1. 修改 MySQL 的绑定地址 默认情况下,MySQL 只监听本地回环接口 `127.0.0.1`,因此无法接受来自外部网络的请求。为了支持远程连接,需要修改 MySQL 配置文件中的绑定地址。 编辑 `/etc/mysql/mysql.conf.d/mysqld.cnf` 文件: ```bash sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf ``` 找到并注释掉原有的绑定地址设置,替换为如下内容: ```ini #bind-address = 127.0.0.1 bind-address = 0.0.0.0 ``` 此更改使得 MySQL 能够监听所有可用的 IP 地址[^4]。 保存文件后,重启 MySQL 服务使更改生效: ```bash sudo systemctl restart mysql ``` #### 2. 创建具有远程权限的新用户 创建一个新的 MySQL 用户,并赋予其从任意主机 (`%`) 访问数据库的权利。 执行以下 SQL 命令来创建新用户以及分配权限: ```sql CREATE USER 'remote_user'@'%' IDENTIFIED BY 'your_password'; GRANT ALL PRIVILEGES ON *.* TO 'remote_user'@'%' WITH GRANT OPTION; FLUSH PRIVILEGES; ``` 上述命令会新建名为 `remote_user` 的账户,密码设为 `your_password`,并且授予该用户对全部数据库的操作权。 注意:出于安全考虑,在实际部署环境中应仅给予必要的最小化权限而非全盘授予权限。 #### 3. 开放防火墙端口 确认服务器上的防火墙已开放 MySQL 默认使用的 TCP 端口号 (通常是 3306) 。如果未开启,则通过以下指令启用它: 对于 ufw(Uncomplicated Firewall),运行: ```bash sudo ufw allow 3306/tcp ``` 或者如果是 iptables 控制的话,则添加规则如: ```bash sudo iptables -A INPUT -p tcp --dport 3306 -j ACCEPT ``` 最后再次检查状态确保规则已被应用。 至此,已完成基本的 MySQL 远程接入准备工作。可以通过客户端工具测试连通性验证是否一切正常工作。 --- ### 注意事项 - **安全性考量**:建议不要直接暴露 root 用户给公网;另外还可以利用 SSL 加密传输数据提高通信的安全等级。 - **IP 白名单管理**:尽可能限定可访问的具体源 IP 列表而不是使用 `%` 表示任何地方都能登录进来减少潜在风险。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值