在虚拟机 CentOS7 环境下安装 MySQL5.7 数据库

配置目标

在虚拟机的 Linux CentOS7 环境下安装 MySQL5.7 版数据库,并能从宿主机 Windows 系统连接该数据库(默认端口:3306)。

1. 准备工作

  • WMware 虚拟机:VMware Workstation 16 Pro
  • CentOS7 镜像:CentOS-7-x86_64-Everything-2009.iso
  • MySQL 安装包:mysql-5.7.34-linux-glibc2.12-x86_64.tar.gz
  • XShell:XShell 7

2. 操作步骤

复制 MySQL 压缩包:

scp C:\Users\z\Desktop\mysql-5.7.34-linux-glibc2.12-x86_64.tar.gz root@192.168.87.128:/tmp

解压 tar.gz/usr/local/mysql57

mkdir /usr/local/mysql57
tar -zxvf /tmp/mysql-5.7.34-linux-glibc2.12-x86_64.tar.gz -C /usr/local/mysql57 --strip-components 1

创建数据目录、日志、socket、pid文件:

cd /usr/local/mysql57
mkdir data run log socket
touch run/mysql.pid log/mysql.log socket/mysql.sock

修改配置文件 /etc/my.cnf,将刚才的四处改动写入配置文件,并设置端口 3306:

vim /etc/my.cnf

按如下内容配置 my.cnf 文件:

[mysqld]
datadir=/usr/local/mysql5.7/data
socket=/usr/local/mysql5.7/socket/mysql.sock
log-error=/usr/local/mysql5.7/log/mysql.log
pid-file=/usr/local/mysql5.7/run/mysql.pid
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
# Settings user and group are ignored when systemd is used.
# If you need to run mysqld under a different user or group,
# customize your systemd unit file for mariadb according to the
# instructions in http://fedoraproject.org/wiki/Systemd[client]
port = 3306
socket=/usr/local/mysql5.7/socket/mysql.sock
#
# include all files from the config directory
#
!includedir /etc/my.cnf.d

创建组与用户,名称都为 mysql

groupadd mysql
useradd -r -g mysql mysql

mysql57 目录下所有内容的用户和组指定为 mysql,并赋予权限:

chown -R mysql:mysql /usr/local/mysql57/
chmod 755 /usr/local/mysql57/

初始化 MySQL 数据库:

/usr/local/mysql57/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql57 --datadir=/usr/local/mysql57/data

从日志文件查看并记录初始密码:(gI<;;Q+)p71+

tail -1 ./log/mysql.log
# 2021-07-15T08:23:19.873819Z 1 [Note] A temporary password is generated for root@localhost: gI<;;Q+)p71+

启动 MySQL 服务器:

# Check and kill extra mysql process
ps -ef | grep mysql
kill -9 some_pid
/usr/local/mysql57/support-files/mysql.server start
#/usr/local/mysql57/support-files/mysql.server: line 239: my_print_defaults: command not found
#/usr/local/mysql57/support-files/mysql.server: line 259: cd: /usr/local/mysql: No such file or directory
#Starting MySQL ERROR! Couldn't find MySQL server (/usr/local/mysql/bin/mysqld_safe)

编辑mysql.server脚本,补充默认配置,修复报错:

vim ./support-files/mysql.server

修改第46、47行,保存并关闭:

basedir=/usr/local/mysql57
datadir=/usr/local/mysql57/data
# :wq

重新启动 MySQL 服务器:

/usr/local/mysql57/support-files/mysql.server start
# Starting MySQL. SUCCESS!

添加软连接,重启 MySQL 服务:

ln -s /usr/local/mysql57/support-files/mysql.server /etc/init.d/mysql
ln -s /usr/local/mysql57/bin/mysql /usr/bin/mysql
service mysql restart
#Shutting down MySQL.. SUCCESS! 
#Starting MySQL. SUCCESS!

登录 MySQL,修改初始密码(gI<;;Q+)p71+)并设置全网映射:

mysql -u root -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.7.34Copyright (c) 2000, 2021, Oracle and/or its affiliates.Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.mysql> set password for root@localhost = password('root');
#Query OK, 0 rows affected, 1 warning (0.00 sec)
mysql> use mysql;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -ADatabase changed
mysql> update user set user.host='%' where user.user='root';
Query OK, 1 row affected (0.00 sec)
Rows matched: 1  Changed: 1  Warnings: 0mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)mysql> exit
Bye

设置开启启动 MySQL 服务:

cp /usr/local/mysql57/support-files/mysql.server /etc/init.d/mysqld
chmod +x /etc/init.d/mysqld #赋予可执行权限
chkconfig --add mysqld #添加服务
chkconfig --list #查看下是否添加
reboot #重启虚拟机后验证是否成功

设置防火墙,允许 Windows 客户端连接 MySQL

# View current firewall
firewall-cmd --list-all
# add port 3306
firewall-cmd --permanent --add-port=3306/tcp
# restart firewall
service firewalld restart
# check config
firewall-cmd --query-port=3306/tcp

Windows 客户端连接 MySQL

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/48487.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ubuntu 上安装软件

1.ubuntu 上安装火狐 在Ubuntu上安装Mozilla Firefox&#xff08;火狐浏览器&#xff09;通常很简单&#xff0c;你可以通过Ubuntu的软件包管理器来完成安装。以下是安装步骤&#xff1a; 打开终端&#xff08;Terminal&#xff09;。 更新你的软件包列表&#xff0c;以确保你…

基于密钥的身份验证(Linux-Linux)

A主机&#xff1a; 1、生成密钥对 [rootservera ~]# ssh-keygen查看公钥 注&#xff1a;id_rsa为私钥&#xff08;证书&#xff09;&#xff0c;id_rsa.pub为公钥 2、注册公钥到服务器 [rootservera ~]# ssh-copy-id root172.25.250.106 查看.ssh 3、使用密钥连接服务器 #…

域名解析中断

在当今数字化的时代&#xff0c;网络已经成为我们生活和工作中不可或缺的一部分。然而&#xff0c;当域名解析中断时&#xff0c;整个网络世界仿佛瞬间陷入了混乱&#xff0c;给个人和企业带来诸多不便和损失。 域名解析&#xff0c;简单来说&#xff0c;就是将我们在浏览器中…

【yolov8】3、yolov8 环境安装 【GPU版】

pycharm下载安装 yolov8 环境安装 【GPU版】 1、要求1.1 什么是 CUDA 和 CUDNN1.2 查看cuda版本的3种方法&#xff08;版本在10.2以上的可以忽略本章节&#xff09;&#xff1a;1.3 没有找到NIVDIA图标&#xff0c;确认是否有英伟达显卡 2、pycharm下载安装进入官网 3、yolov8…

【Android】视图与常用控件总结

文章目录 一、视图基础1.1 设置视图的宽高1.2 设置视图的间距1.3 设置视图的对齐方式1.4 总结 二、控件2.1 TextView2.1.1 设置宽高2.1.2 设置内容2.1.3 设置大小2.1.4 设置颜色 2.2 Button2.3 EditText2.4 ImageView2.5 ProgressBar2.6 AlertDialog2.7 ProgressDialog 本文主要…

JAVASE进阶day14(网络编程续TCP,日志)

TCP 三次握手 四次挥手 package com.lu.day14.tcp;import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.net.Socket;public class Client {public static void main(String[] args) {try(Socket socket new Socket("192.…

哈默纳科HarmonicDrive减速机组装注意事项

在机械行业中&#xff0c;精密传动设备HarmonicDrive减速机对于维持机械运作的稳定性和高效性起着至关重要的作用。然而在减速机的组装过程中&#xff0c;任何一个细微的错误都可能导致其运转时出现振动、异响等不良现象&#xff0c;严重时甚至可能影响整机的性能。因此&#x…

【开源库】libodb库编译及使用

前言 本文介绍windows平台下libodb库的编译及使用。 文末提供libodb-2.4.0编译好的msvc2019_64版本&#xff0c;可直接跳转自取 ODB库学习相关 【开源库学习】libodb库学习&#xff08;一&#xff09; 【开源库学习】libodb库学习&#xff08;二&#xff09; 【开源库学习】…

30种图像动画特效算法(C#多线程版) - 好文要转

最近想做一个屏幕保护软件&#xff0c;需要图片切换效果&#xff0c;于是就找到这个博文&#xff0c;强烈推荐&#xff1a; https://blog.51cto.com/mengliao/473169 其中的源码包在此下载&#xff1a;https://download.csdn.net/download/lzhdim/89532212 效果如下&#xff1a…

Linux 中停止 Docker 服务报 warning 导致无法彻底停止问题如何解决?

目录 问题 systemd Docker Service 和 Socket 警告的原因 解决方法 问题 使用如下命令停止 Docker # systemctl stop docker 执行后报的时候报了一个 warning&#xff0c;如下 Warning: Stopping docker.service, but it can still be activated by:docker.socket 这时…

Unity | AssetBundle

1 定义 Unity中的一种特殊资源包格式&#xff0c;用于存储和分发游戏资源。这些资源可以包括模型、纹理、音频文件、预制体、场景等。 AssetBundle允许开发者在游戏运行时动态加载和卸载资源&#xff0c;从而实现灵活的资源管理。 2 使用场景 1、资源管理 有效管理游戏中的资…

Pycharm 安装与使用

PyCharm的安装与使用 一、什么是PyCharm PyCharm是由JetBrains开发的专业Python集成开发环境&#xff08;IDE&#xff09;&#xff0c;提供智能代码补全、语法高亮和代码导航等编辑功能。它具有强大的调试工具和内置版本控制系统支持&#xff0c;方便代码管理和协作。PyCharm…

《小程序02:云开发之增删改查》

一、前置操作 // 一定要用这个符号包含里面的${}才会生效 wx.showToast({title: 获取数据成功&#xff1a;${colorLista}, })1.1&#xff1a;初始化介绍 **1、获取数据库引用&#xff1a;**在开始使用数据库 API 进行增删改查操作之前&#xff0c;需要先获取数据库的引用 cons…

ABAP:创建/修改成本中心

学习内容描述&#xff1a;利用SAP的标准BAPI创建/修改成本中心 业务参考文档&#xff1a;【SAP-CO】成本中心的创建、变更与删除_sap ks01 函数-CSDN博客 重点知识&#xff1a;标准BAPI的调用 1、创建&#xff1a;BAPI_COSTCENTER_CREATEMULTIPLE DATA: lt_costcenterlist TY…

<数据集>安全帽佩戴识别数据集<目标检测>

数据集格式&#xff1a;VOCYOLO格式 图片数量&#xff1a;3912张 图片分辨率&#xff1a;640640 标注数量(xml文件个数)&#xff1a;3912 标注数量(txt文件个数)&#xff1a;3912 标注类别数&#xff1a;2 标注类别名称&#xff1a;[no-helmet, helmet] 序号类别名称图片…

在麒麟服务器 V10 SP3 上将 Redis 设置为开机自启

要在麒麟服务器 V10 SP3 上将 Redis 设置为开机自启&#xff0c;可以使用 systemd 来管理 Redis 服务。以下是详细步骤&#xff1a; 1、创建一个 systemd 服务单元文件&#xff1a; 首先&#xff0c;创建一个新的服务单元文件&#xff0c;例如 redis.service。 sudo nano /e…

刷题Day59|prim算法与kruskal算法:53. 寻宝

参考&#xff1a;代码随想录&#xff08;http://www.programmercarl.com&#xff09; 53. 寻宝 53. 寻宝&#xff08;第七期模拟笔试&#xff09; (kamacoder.com) prim算法思路&#xff1a; 第一步&#xff0c;选距离生成树最近的节点第二步&#xff0c;最近的节点加入生成…

机器学习——降维算法PCA和SVD(sklearn)

目录 一、基础认识 1. 介绍 2. 认识 “ 维度 ” &#xff08;1&#xff09;数组和Series &#xff08;2&#xff09;DataFrame 表 &#xff08;3&#xff09;图像 3. 降维思想 4. 降维步骤 二、降维算法&#xff08;PCA&#xff09; 1. PCA实现 &#xff08;1&#…

Library not found for -lstdc++.6.0.9

解决方案一 由于项目已经很多年了&#xff0c;前段时间更新了Xcode发现编译报错lstdc这个库很早以前就被舍弃了&#xff0c;但是一个项目的维护都随着解决bug堆砌出来的&#xff0c;这也导致了我们的项目走上了这条路。 比如 Library not found for -lstdc.6.0.9 报的错&#x…

java转义文本中的HTML字符为安全的字

java转义文本中的HTML字符为安全的字 &#xff0c;以下字符被转义&#xff1a;替换为 (&apos; doesnt work in HTML4) " 替换为 &quot; & 替换为 &amp; < 替换为 < > 替换为 >1.先添加hutool依赖到pom <dependency><groupId>cn…