2024--Django平台开发-Web框架和Django基础(二)---Mysql多版本共存(Mac系统)

MySQL多版本共存(Mac系统)

想要在Mac系统上同时安装【MySQL5.7 】+【MySQL8.0】版本,需要进行如下的操作和配置。

想要同时安装两个版本可以采取如下方案:

  • 方案1:【讲解】

    MySQL57,用安装包进行安装。
    MySQL80,用压缩包进行免安装处理。
    
  • 方案2:

    MySQL57,用压缩包进行免安装处理。
    MySQL80,用压缩包进行免安装处理。
    

如果使用安装包的形式会将MySQL安装到 /usr/local/mysql 目录下,所以,两个版本都使用安装的话,会导致老版本自动卸载。

1.MySQL5.7

第1步:安装和初始化

https://downloads.mysql.com/archives/community/

这个基于dmg文件的安装过程,其实包含了:

/usr/local/mysql/
/usr/local/mysql-5.7.31-macos10.14-x86_64/
  • 安装,默认安装在了 /usr/local/mysql-5.7.31-macos10.14-x86_64/目录。
  • 初始化,在安装目录下创建data目录用于存放数据; 初始化模块数据库以及账户相关等,例如: 账cd

第2步:创建配置文件

/usr/local/mysql
/usr/local/mysql-5.7.31-macos10.14-x86_64

在这里插入图片描述

[mysqld]

port=3306

basedir=/usr/local/mysql

datadir=/usr/local/mysql/data

socket=/tmp/mysql57.sock

user=root

为了避免多个版本共存时,配置文件混乱的问题,建议大家还是把配置文件放在当前MySQL的安装目录下。

第3步:启动和环境变量

在Mac系统中启动MySQL常见的有2种方式:

  • 安装目录中自带 mysql.server 脚本(建议)

    sudo /usr/local/mysql/support-files/mysql.server start
    # 输入电脑密码
    
    sudo mysql.server start
    # 输入电脑密码
    
    sudo /usr/local/mysql/support-files/mysql.server stop
    

    在这里插入图片描述

    为了避免每次执行命令都需要些路径,可以将路径 /usr/local/mysql/support-files加入到环境变量中。

在这里插入图片描述

操作完成之后,再在终端执行下命令:source ~/.zprofile 让设置的环境变量立即生效。

export PATH=$PATH:/usr/local/mysql/support-files
export PATH=$PATH:/usr/local/mysql/bin

注意:mac系统的版本如果比较老,会显示空白的 zprofile 文件,此就要去打开 bash_profile 文件。

这样设置好之后,以后就可以使用下面的命令去启动和关闭MySQL了。

sudo mysql.server start
sudo mysql.server stop
  • 系统偏好设置(不推荐)
image-20210510104009559

第一种mysql.server脚本的形式,内部是使用 mysqld_safe运行,可以守护我们的MySQL进程,如意外挂掉可自动重启。

第4步:连接&设置密码

安装并启动MySQL之后,就可以连接MySQL来测试是否已正确安装并启动成功。

在这里插入图片描述

以后在开发时,肯定是要用Python代码来连接MySQL并且进行数据操作(后面讲)。

在安装MySQL时,其实也自动安装了一个工具(客户端),让我们快速实现连接MySQL并发送指令。

在这里插入图片描述

mysql --socket=/tmp/mysql57.sock -u root -p
set password=password("root123");

注意:/usr/local/mysql/bin也可以加入到环境变量。

至此,在Mac系统中关于MySQL的安装和配置就完成了。

2.MySQL8.0

第1步:下载和解压

https://downloads.mysql.com/archives/community/

在这里插入图片描述

在这里插入图片描述

第2步:创建配置文件

在这里插入图片描述

[mysqld]

port=3307

basedir=/Users/yiyebaitou/service/mysql-8.0.33-macos13-x86_64

datadir=/Users/yiyebaitou/service/mysql-8.0.33-macos13-x86_64/data

socket=/tmp/mysql80.sock

user=root

第3步:初始化

/Users/yiyebaitou/service/mysql-8.0.33-macos13-x86_64/bin/mysqld   --initialize-insecure

在这里插入图片描述

第4步:修改mysql.server

默认mysql.server管理的是 /usr/local/mysql目录下的MySQL进程(MySQL5.7),所以需要对他进行修改才能让他去管理我们的MySQL8.0。

  • 原文件

    basedir=
    datadir=
    
  • 修改后

    basedir=/Users/yiyebaitou/service/mysql-8.0.33-macos13-x86_64/
    datadir=/Users/yiyebaitou/service/mysql-8.0.33-macos13-x86_64/data/
    

在这里插入图片描述

第5步:环境变量和启动

export PATH=$PATH:/Users/yiyebaitou/service/mysql-8.0.33-macos13-x86_64/support-files

在这里插入图片描述

为了防止冲突,再改个名字,修改为:mysql8.server

在这里插入图片描述

启动服务:

sudo mysql8.server start

在这里插入图片描述

第6步:连接&设置密码

mysql --socket=/tmp/mysql80.sock -u root -P 3307 -p
ALTER USER 'root'@'localhost' IDENTIFIED WITH MYSQL_NATIVE_PASSWORD BY 'root123';

在这里插入图片描述

相关推荐

  1. Web框架开发-Django-缓存

    2024-01-10 15:00:03       15 阅读
  2. Web框架开发-Django-模板继承静态文件配置

    2024-01-10 15:00:03       20 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-01-10 15:00:03       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-01-10 15:00:03       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-01-10 15:00:03       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-01-10 15:00:03       18 阅读

热门阅读

  1. 如何使用PHP开发缓存优化图片加载速度

    2024-01-10 15:00:03       29 阅读
  2. 广度优先搜索

    2024-01-10 15:00:03       32 阅读
  3. 理解DOM树的加载过程

    2024-01-10 15:00:03       34 阅读
  4. Centos 7 安装Node.js服务

    2024-01-10 15:00:03       38 阅读
  5. 机器人控制箱内部包含什么零件,有什么作用。

    2024-01-10 15:00:03       37 阅读
  6. 【Verilog】期末复习——设计11011序列检测器电路

    2024-01-10 15:00:03       35 阅读
  7. #Uniapp:编译器#ifdef --- #endif &#ifndef --- #endif

    2024-01-10 15:00:03       41 阅读
  8. Android权限控制---自定义权限

    2024-01-10 15:00:03       40 阅读