brew 安装MySQL 5.7

写在前面:博主是一只经过实战开发历练后投身培训事业的“小山猪”,昵称取自动画片《狮子王》中的“彭彭”,总是以乐观、积极的心态对待周边的事物。本人的技术路线从Java全栈工程师一路奔向大数据开发、数据挖掘领域,如今终有小成,愿将昔日所获与大家交流一二,希望对学习路上的你有所助益。同时,博主也想通过此次尝试打造一个完善的技术图书馆,任何与文章技术点有关的异常、错误、注意事项均会在末尾列出,欢迎大家通过各种方式提供素材。

  • 对于文章中出现的任何错误请大家批评指出,一定及时修改。
  • 有任何想要讨论和学习的问题可联系我:zhuyc@vip.163.com。
  • 发布文章的风格因专栏而异,均自成体系,不足之处请大家指正。

MySQL 5.7的Homebrew安装 - MacOS

本文关键字:MySQL、数据库、5.7版本、MacOS、Homebrew

文章目录

  • MySQL 5.7的Homebrew安装 - MacOS
    • 一、MySQL简介
    • 二、版本选择
      • 1. 应用场景
      • 2. MySQL版本
    • 三、安装步骤
      • 1. 查询软件信息
      • 2. 执行安装命令
      • 3. 检查服务状态
      • 4. 初始化配置
      • 5. 终端登陆测试
      • 6. 连接工具测试

一、MySQL简介

MySQL是一个典型的关系数据库,目前是Oracle公司产品之一,也是目前主流使用的关系型数据库之一。使用MySQL可以进行最基本的数据存储、管理、查询等操作,也可以方便的组建数据库集群,配置读写分离。

MySQL数据库同样使用SQL(结构化查询语言)来进行操作,同时MySQL数据库自身也有很多可以直接使用的内置函数,在部分操作的语法上和其他数据库会存在区别。

二、版本选择

1. 应用场景

  • 社区版

在学习阶段,可以使用免费的社区版,这也是中小型企业会选用的一个版本,可以在官方网站直接进行下载。在社区版中,除了提供数据库服务端以外,同样提供了社区版相关组件,如官方的可视化工具、MySQL集群、各开发语言数据库驱动等,可以根据需要直接下载。

  • 企业版

MySQL企业版是提供了商用的解决方案,相关的产品除了数据库服务外,还包括:MySQL云服务、企业级数据备份、企业级防火墙、企业级数据加密等。

2. MySQL版本

目前MySQL官网主要提供了两个大版本的支持:5.7.x、8.0.x,但是从5.0.x至今的版本依然可以全部下载到。至于说为什么直接从5.x跳到8.x笔者不得而知,但是从官网透露出的信息可以知道8.x版本相较于5.7版本,在性能方面做出了较大的改进和优化:2x Faster than MySQL 5.7!

但是笔者要在这里提醒大家的是,在8.0的MySQL数据库中,对某些常用语法的细节部分也做了调整,如果准备进行升级,一定要注意兼容性的问题
而5.7版本相较于5.6版本而言,主要是进行了性能上的优化,并提供了更丰富的设置。如:新增了优化器、原生JSON支持、GIS扩展等。

三、安装步骤

使用Homebrew进行MySQL数据库的安装需要MacOS系统中已经安装了相关环境,这部分可以参考:MacOS安装Homebrew与Oh-My-Zsh,完成后打开终端继续以下操作。

1. 查询软件信息

首先使用search命令搜索MySQL数据库完整名称:

brew search mysql1


可以看到5.7版本的MySQL数据库完整名称是mysql@5.7

2. 执行安装命令

使用install命令进行软件安装:

brew install mysql@5.71


安装过程不需要其它操作,等待安装完成即可。

3. 检查服务状态

第一次安装MySQL,服务是未开启状态,使用services命令进行检查:

brew services list1


使用start指令开启服务,执行后每次开机都会自动启动该服务:

brew services start mysql@5.71

4. 初始化配置

安装完成后需要执行一次配置才能够正常使用,执行如下命令:

mysql_secure_installation

如果提示没找到mysql_secure_installation,就加入环境变量

  echo 'export PATH="/usr/local/opt/mysql@5.7/bin:$PATH"' >> ~/.zshrcexport LDFLAGS="-L/usr/local/opt/mysql@5.7/lib"export CPPFLAGS="-I/usr/local/opt/mysql@5.7/include"


如果是个人使用,这里可以不开启密码校验插件,这样我们可以使用较为简单的密码组合,方便记忆,因此输入n

  • 设置密码

为数据库的root用户(最高权限用户)设置密码,需要输入两次,输入时没有光标显示,是正常的。

  • 选择是否移除用户

这一步可以将不需要的匿名用户移除,输入y回车即可。

  • 开启root用户远程连接

默认给出的选项是不允许通过root用户远程连接,因为root用户拥有最高权限,学习阶段可以开启方便虚拟机或局域网调试(如果开启需要输入n)。

  • 选择是否保留测试数据集

安装是默认附带一个test数据集,这里可以根据需要选择是否保留(如果需要移除则输入y)。

  • 立即刷新权限

输入y使得密码和权限设置立即生效,否则需要重新启动数据库服务。

5. 终端登陆测试

使用刚刚设置的密码测试登陆:

mysql -uroot -p1


也可以在命令中使用明文密码直接登陆,如(密码为root):

mysql -uroot -proot1

6. 连接工具测试

以Navicat为例,首先新建一个连接:

填写连接名和密码创建一个新的连接:

对于Navicat的基本功能介绍可以参考:MySQL数据库界面化工具 - Navicat的常用功能。

文章来源: sandtower.blog.csdn.net,作者:一头小山猪,版权归原作者所有,如需转载,请联系作者。

原文链接:sandtower.blog.csdn.net/article/details/124556129

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

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

vue pc端/手机移动端 — 下载导出当前表格页面pdf格式

一、需求:在手机端/pc端实现一个表格页面(缴费单/体检报告单等)的导出功能,便于用户在本地浏览打印。 二、实现:之前在pc端做过预览打印的功能,使用的是print.js之类的方法让当前页面直接唤起打印机的打印预…

【项目】在线音乐播放器测试报告

目录 项目背景 项目功能 测试计划 功能测试 登录页面的测试 测试用例 测试结果 注册页面的测试 测试用例 测试结果 音乐列表页面的测试 测试用例 测试结果 出现的bug 搜索功能的bug 问题解决 删除功能的bug 问题解决 喜欢列表页面的测试 测试用例 测试结果…

计算机MSVCP90.dll怎么重新安装?MSVCP90.dll丢失的解决方法分享

在计算机使用过程中,可能会遇到 MSVCP90.dll 丢失的问题。MSVCP90.dll 是 Microsoft Visual Studio 2008 编译的程序所使用的一个动态链接库(DLL)文件。当该文件丢失或损坏时,可能会导致一些应用程序无法正常运行。本文将详细介绍…

《The Rise and Potential of Large Language Model Based Agents: A Survey》全文翻译

The Rise and Potential of Large Language Model Based Agents: A Surve - 基于 LLMs 的代理的兴起和潜力:一项调查 论文信息摘要1. 介绍2. 背景2.1 AI 代理的起源2.2 代理研究的技术趋势2.3 为什么大语言模型适合作为代理大脑的主要组件 3. 代理的诞生&#xff1a…

APP渗透测试

APP反抓包突破 抓包失败分析 工具证书未配置 app不使用HTTP/S协议 反模拟器 1.使用真机进行抓包 2.用模拟器模拟真机 3.逆向删除反模拟器代码打包重新测试 反证书 SSL证书绑定分为单向校验和双向校验,单向校验就是客户端校验服务端的证书,双向…

Jenkins 权限管理

关于Role-based Authorization Strategy 使用Jenkins自身的权限管理过于粗糙,无法对单个、一类项目做管理,我们可以使用 Role-based Authorization Strategy插件来管理项目、角色。 首先安装该插件:在Jenkins查看该插件有无安装 在Jenkins-…

机器学习 09 随机森林

三、 偏差和方差 偏差度量了学习算法的期望预测与真实结果的偏离程度, 即刻画了学习算法本身的拟合能力。 方差:离散程度, 也就是该随机变量在其期望值附近的波动程度 噪声表达了在当前任务上,任何学习算法所能达到的期望泛化误差的下界, 即刻画了学习问题本身的难…

【AI绘画】Stable Diffusion WebUI

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kuan 的首页,持续学…

react悬浮球效果展示

1.需求 在开发项目时,当用户登录后,需要在主页显示一个悬浮球(可以自由拖动),点击悬浮球后,进入目标页面,如图所示: 2.实现 把上面需要实现的悬浮球功能写成一个组件,页面…

【python入门篇】列表简介及操作(2)

列表是什么? 列表是由一系列按特定顺序排列的元素组成。你可以创建包含字母表中的所有字母、数字 0~9 或所有家庭成员的列表;也可以将任何东西加入列表中,其中的元素之间可以没有任何关系。列表通常包含多个元素,因此给列表指定一…

企业知识库一站式搭建指南,从0到1搞定知识库搭建!

如今,企业组织的可持续发展依靠企业的知识管理和迭代创新,只有一站式的企业知识库的创建,才能保证存储、组织和共享企业内部的知识、信息和资源。 目前业内很多公司都通过HelpLook来搭建知识库,用于集合企业内部的各种知识资产&am…

TikTok海外扩张:亚马逊的新对手崛起

随着社交媒体和电子商务的融合,TikTok正迅速崭露头角,成为亚马逊等传统电商巨头的潜在竞争对手。这一新兴平台的快速发展引发了广泛的关注,特别是在全球范围内。 在这篇文章中,我们将探讨TikTok海外扩张的战略,以及它…

img镜像如何制作虚拟机

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、准备工作二、操作步骤1.把新建的虚拟磁盘挂载到虚拟机2.把需要的文件拷贝到虚机中3、 烧录 总结 前言 一般制作虚拟机都是使用iso镜像,如果遇到…

二、vue2脚手架-组件化开发

| vue中的图片打包后会转换为base64格式 组件的使用 1.创建组件:component文件夹中创建HelloWorld.vue文件 2.在app.vue中引入组件 组件间的通信/传值(常用) 一、prop父传子 1.App.vue中的引入组件中创建需要传递的数据 2.在子组件中接…

【Spring Boot】实战:实现数据缓存框架

🌿欢迎来到@衍生星球的CSDN博文🌿 🍁本文主要学习【Spring Boot】实现数据缓存框架 🍁 🌱我是衍生星球,一个从事集成开发的打工人🌱 ⭐️喜欢的朋友可以关注一下🫰🫰🫰,下次更新不迷路⭐️💠作为一名热衷于分享知识的程序员,我乐于在CSDN上与广大开发者…

修改sqlmap-Tamper脚本

修改sqlmap-Tamper脚本 文章目录 修改sqlmap-Tamper脚本1 sqlmap官网2 sql注入漏洞注入尝试3 环境:sqli-labs/Less-26a/3.1 尝试宽字节注入: 3.2 sqlmap使用3.3准备修改sqlmap使用 4 sqlmap中-tamper工厂(输入输出)4.1 [参考文章:…

5+铁死亡+分型+WGCNA+机器学习分析

今天给同学们分享一篇铁死亡分型WGCNA机器学习的生信文章“Identification of ferroptosis-related molecular clusters and genes for diabetic osteoporosis based on the machine learning”,这篇文章于2023年8月14日发表在Front Endocrinol (Lausanne)期刊上&am…

求职面试,如何赢得面试官的满意赞许?

在面试的时候,我们会遇到很多突发事件,这些事件让我们不能很好地将面试进行下去。那么,在出现事情的时候,我们应该如何让面试官满意? 1、选择得体的服装 在面试的时候,想要面试官更好地选择自己&#x…

二、C++项目:仿muduo库实现并发服务器之时间轮的设计

文章目录 一、为什么要设计时间轮?(一)简单的秒级定时任务实现:(二)Linux提供给我们的定时器:1.原型2.例子 二、时间轮(一)思想(一)代码 一、为什…

Java基础面试题精选:深入探讨哈希表、链表和接口等

目录 1.ArrayList和LinkedList有什么区别?🔒 2.ArrayList和Vector有什么区别?🔒 3.抽象类和普通类有什么区别?🔒 4.抽象类和接口有什么区别?🔒 5.HashMap和Hashtable有什么区别&…