MySQL5.7安装

下载 mysql 5.7.42

开始安装

将下载的安装包上传到服务器根目录

ls /
# mysql-5.7.42-linux-glibc2.12-x86_64.tar.gz bin  boot  dev  etc  home  lib  lib64  media  mnt ...

将安装包移动到 /usr/local 目录下

mv /mysql-5.7.42-linux-glibc2.12-x86_64.tar.gz /usr/local

将安装包解压

# 进入 /usr/local
cd /usr/local

# 开始解压
tar -zxvf mysql-5.7.42-linux-glibc2.12-x86_64.tar.gz

# 将解压出来的文件重名为 mysql
mv mysql-5.7.42-linux-glibc2.12-x86_64 mysql

创建数据存储文件

mkdir /usr/local/mysql/data

创建 mysql 用户和用户组(初始化数据库时用)

groupadd mysql
useradd -g mysql mysql

将存储文件(/usr/local/mysql/data)的用户和用户组设置为新建的 mysql

chown -R mysql:mysql /usr/local/mysql

创建配置文件 /etc/my.cnf

vim /etc/my.cnf

然后将如下内容复制到配置文件 /etc/my.cnf 进行保存

[mysqld]
bind-address=0.0.0.0
port=3306
user=mysql
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
socket=/tmp/mysql.sock
log-error=/usr/local/mysql/data/mysql.err
pid-file=/usr/local/mysql/data/mysql.pid
#character config
character_set_server=utf8mb4
symbolic-links=0
explicit_defaults_for_timestamp=true

初始化 mysql

# 进入 mysql 的二进制文件目录
cd /usr/local/mysql/bin/

# 使用 mysqld 初始化
./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/ --user=mysql --initialize

将 mysql 添加为系统服务

cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
cp /usr/local/mysql/bin/mysql /bin/mysql

启动 mysql 服务

systemctl start mysql

查看服务状态

systemctl status mysql

# mysql.service - LSB: start and stop MySQL
#   Loaded: loaded (/etc/rc.d/init.d/mysql; bad; vendor preset: disabled)
#   Active: active (running) since 六 2024-09-28 17:17:36 CST; 4min 32s ago
#     Docs: man:systemd-sysv-generator(8)
#  Process: 4796 ExecStart=/etc/rc.d/init.d/mysql start (code=exited, status=0/SUCCESS)

设置密码

启动 mysql 服务之后,少不了需要登录或远程连接据库,这都是需要登录密码的,所以我们得弄到这个密码。首先 mysql 在 /usr/local/mysql/data/mysql.err 文件中提供了 root 用户的初始密码,我们可以先通过这个初始密码登录数据库,然后将通过 sql 将密码修改为自己需要的,这样就搞定了

首先查看 mysql 初始密码

# 使用 cat 命令查看
cat /usr/local/mysql/data/mysql.err

在这里插入图片描述

通过初始密码进行登录,登录之后修改密码为 root

ALTER USER 'root'@'localhost' IDENTIFIED BY 'root';
FLUSH PRIVILEGES;

设置完成后通过新设置的密码进行登录

问题汇总

无法远程登录

如果使用 Navicat、SQLyog 无法连接数据库,可尝试以下方式解决:

  1. 开放防火墙3306端口
# 开放3306端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent

# 重启防火墙
firewall-cmd --reload
  1. 修改 root 用户的 host 属性
USE mysql;
UPDATE user set host = '%' where user = 'root';
FLUSH PRIVILEGES;

设置完成后重新连接

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值