系统:Redhat Linux 7.7

mysql版本:5.7

1. MySQL下载

o 登录网站:https://dev.mysql.com/downloads/mysql/

o 选择合适版本与系统

mysql5.7版本如何运行数据库(MySQL5.7数据库安装与远程连接)(1)

2. MySQL安装

(1) 卸载系统自带Mariadb,mariadb是Mysql的一个分支,具有和mysql相同的API和命令行。

(2) 为了避免mysql有之前安装的碎片,卸载mysql

(3) 删除etc目录下的my.cnf文件:

rm /etc/my.cnf

(4) 解压 RPM 包

tar -xvf mysql-5.7.31-1.el7.x86_64.rpm-bundle.tar

(5) 安装 RPM 包

rpm -ivh mysql-community-common-5.7.31-1.el7.x86_64.rpm

rpm -ivh mysql-community-libs-5.7.31-1.el7.x86_64.rpm

rpm -ivh mysql-community-client-5.7.31-1.el7.x86_64.rpm

rpm -ivh mysql-community-server-5.7.31-1.el7.x86_64.rpm

rpm -ivh mysql-community-devel-5.7.31-1.el7.x86_64.rpm

(6) 安装成功后,开启mysql服务:

systemctl start mysqld.service

错误:Job for mysqld.service failed because the control process exited with error code.

--- 解决办法:目前还没有想到,查看了日志也没有看出来,最终通过卸载之前的装的mysql,重装解决了,出现这个问题的原因可能是之前的mysql或者mariadb没有卸载干净。

--- 卸载mysql的命令同一中的方法。

(7) 查看 3306 端口是否成功开启

netstat -ln | grep 3306

3. MySQL启动与初始化配置

(1) 启动并查看mysql进程

mysql5.7版本如何运行数据库(MySQL5.7数据库安装与远程连接)(2)

(2) 使用root账户登录,重置密码时一般会遇到报

mysql -u root

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

(3) 修改 my.cnf 信息

vi /etc/my.cnf

添加如下信息:

skip-grant-tables

character_set_server=utf8

init_connect='SET NAMES utf8'

collation-server=utf8_general_ci

(4) 重启mysql服务:

systemctl restart mysqld.service

(5) 修改初始密码:

cat /var/log/mysqld.log | grep password

将初始密码复制下来,输入如下命令登陆mysql :

mysql –u root –p

将复制的密码粘贴到命令行中,进入了mysql,使用如下命令修改密码:

set password=password('新密码');

flush privileges;

# 修改 root 初始密码

set password=password(‘123’)

# 可能弹出错误

ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

# 解决方案

set global validate_password_policy=0;

set global validate_password_length=1;

# 更改密码

set password=password(‘1234’)

# 查看密码策略方式

show variables like 'validate_password%';

mysql5.7版本如何运行数据库(MySQL5.7数据库安装与远程连接)(3)

# 退出 mysql

exit

# 暂停 mysql 服务

systemctl stop mysqld.service

# 修改 my.cnf

cat /etc/my.cnf

# 编辑my.cnf配置文件将:skip-grant-tables这一行注释掉

# 重启mysql服务

systemctl start mysqld.service

再次登录mysql

mysql -uroot -p1234

4. MySQL远程连接

(1) 关闭防火墙或开放端口,以下可以 二选一:

o 方法一:关闭防火墙

# 停止firewall

systemctl stop firewalld.service

# 禁止firewall开机启动

systemctl disable firewalld.service

o 方法二:开放端口:

firewall-cmd --zone=public --add-port=3306/tcp --permanent

firewall-cmd --reload

(2) 添加远程访问权限:

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;

# 第一个 root 为 用户名,第二个root 为 密码

# % -- 表示所有的电脑都可以连接,也可以设置某个ip地址运行连接

flush privileges;

(3) 重启服务

systemctl restart mysqld.service;

5. Windows下连接MySQL

(1) 在windows下安装 Navicat for mysql

(2) 打开 cmd,看是否能连接上服务器

ping 192.168.2.153

ssh -v -p 3306 root@192.168.2.153

mysql5.7版本如何运行数据库(MySQL5.7数据库安装与远程连接)(4)

mysql5.7版本如何运行数据库(MySQL5.7数据库安装与远程连接)(5)

(3)Navicat for mysql 连接

o 设置用户与密码

mysql5.7版本如何运行数据库(MySQL5.7数据库安装与远程连接)(6)

o 点击链接测试看到如下内容表示成功

mysql5.7版本如何运行数据库(MySQL5.7数据库安装与远程连接)(7)

,