Mac安裝壓縮版MySQL Server

来源:https://www.cnblogs.com/bulldo/p/18118525
-Advertisement-
Play Games

本文詳細記錄一次在Mac中安裝MySQL Server的過程,安裝環境如下: MacOS 14.4 x86, core i7 在MySQL資料庫實驗環境下通常都要安裝其MySQL Server,安裝方式五花八門,最簡單的有通過系統包管理工具一鍵安裝,例如apt和yum等,這種安裝方法會使得MySQL ...


本文詳細記錄一次在Mac中安裝MySQL Server的過程,安裝環境如下:

  • MacOS 14.4
  • x86, core i7

在MySQL資料庫實驗環境下通常都要安裝其MySQL Server,安裝方式五花八門,最簡單的有通過系統包管理工具一鍵安裝,例如aptyum等,這種安裝方法會使得MySQL按照標準設計將文件分散在多個文件路徑中,在需要刪除的時候比較麻煩。如果你的操作系統中已經安裝了Docker那麼就更簡單了,只需要拉取鏡像啟動容器就完成了。除此之外還可以使用壓縮包方式安裝,優點就是文件集中,只需要下載並簡單配置就可以使用。

首先,我們可以在MySQL官網選擇合適版本下載。這裡我選擇了x86架構的安裝包,M1用戶可以選擇arm架構。x86下載地址arm下載地址
image

這裡我放在~/blog-assert路徑中,可以按照自己的需要進行更改。
image

可以看到這是一個tar.gz文件,接下來我們使用命令解壓縮

mkdir mysql-server && tar -xzvf mysql-8.2.0-macos13-x86_64.tar.gz -C mysql-server --strip-components 1

這裡的-x參數表示解壓縮,-z參數表示處理gzip壓縮,-v參數表示詳細顯示解壓過程,-f參數表示處理文件,--strip-components 1表示刪除一層目錄結構

將文件名.tar.gz替換為你要解壓的文件的實際名稱。解壓後,文件會被解壓到與tar.gz文件同名的目錄中。

此時目錄結構如下:

➜  mysql-server tree . -L 1
.
├── LICENSE
├── README
├── bin
├── docs
├── include
├── lib
├── man
├── share
└── support-files

8 directories, 2 files

這裡有兩個重要的路徑binsupport-files,下麵我們將它配置在環境變數中。作者使用了zsh,因此相應的配置文件是~/.zshrc。我們使用vim編輯,在文件最後添加以下內容:

...
export MYSQL_HOME=~/blog-assert/mysql-server
export PATH=$MYSQL_HOME/bin:$MYSQL_HOME/support-files:$PAT

添加完成之後:wq退出,此時需要使用命令重新載入環境變數:source ~/.zshrc,如果你用的是bash那麼就替換成source ~/.bashrc

此時我們在終端里就可以使用mysql --version來查看是否配置成功了。

➜  mysql-server mysql --version
mysql  Ver 8.2.0 for macos13 on x86_64 (MySQL Community Server - GPL)

接下來配置啟動伺服器,首先初始化root和服務,生成預設密碼,方便我們登陸。臨時密碼:
A temporary password is generated for root@localhost: 2q)7k;gljhsT,記錄該密碼。

➜  mysql-server  sudo mysqld --initialize --user=root
2024-04-07T03:07:11.048660Z 0 [System] [MY-015017] [Server] MySQL Server Initialization - start.
2024-04-07T03:07:11.058578Z 0 [System] [MY-013169] [Server] /Users/xx/blog-assert/mysql-server/bin/mysqld (mysqld 8.2.0) initializing of server in progress as process 26138
2024-04-07T03:07:11.069614Z 0 [Warning] [MY-010159] [Server] Setting lower_case_table_names=2 because file system for /Users/xx/blog-assert/mysql-server/data/ is case insensitive
2024-04-07T03:07:11.087538Z 1 [System] [MY-013576] [InnoDB] InnoDB initialization has started.
2024-04-07T03:07:11.236394Z 1 [System] [MY-013577] [InnoDB] InnoDB initialization has ended.
2024-04-07T03:07:12.529453Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: 2q)7k;gljhsT
2024-04-07T03:07:13.184824Z 0 [System] [MY-013172] [Server] Received SHUTDOWN from user <via user signal>. Shutting down mysqld (Version: 8.2.0).
2024-04-07T03:07:13.524827Z 0 [System] [MY-015018] [Server] MySQL Server Initialization - end.

為mysql-server創建系統軟連接

➜  blog-assert sudo ln -s ~/blog-assert/mysql-server /usr/local/mysql
Password:

啟動mysql,指定系統root用戶啟動mysql

sudo mysql.server start --user=root
Starting MySQL
.Logging to '/usr/local/mysql/data/yangsheng.local.err'.
. SUCCESS!

連接server,查看安裝結果。

mysql -u root -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 8
Server version: 8.2.0

Copyright (c) 2000, 2023, 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>

修改root用戶名密碼,因為現在使用的是預設的臨時密碼。

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
4 rows in set (0.01 sec)

到這裡Mac OS中安裝壓縮版的mysql server就結束了。


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 一:when語句 1:基礎瞭解 說到底,還是有多個表達式來組成一個判斷語句,很多種的判斷語句 1、 為什麼需要判斷語句: 有的時候play的結果需要依賴於變數,fact或者是前一個任務的執行結果,或者基於上一個task執行返回的結果而決定如何執行後續的task,這個時候就需要條件的判斷了,一個很簡單 ...
  • 使用opc-ua-sim模擬server 前言 一直想找一種將模擬server放到docker容器中運行的方式,這樣就不需要在每個電腦上都安裝軟體,僅僅只需要將鏡像保存起來,使用時載入就行。於是乎就跑到了HUB里搜尋,你說巧不巧,就剛好找到了. iotechsys 在HUB里找到這個作者(iotec ...
  • 本文分享自華為雲社區《openGauss 5.0 單點企業版部署_Centos7_x86》,本文作者:董小姐 本文檔環境:CentOS7.9 x86_64 4G1C40G python2.7.5 互動式初始化環境方式 1、介紹 openGauss是一款開源關係型資料庫管理系統,採用木蘭寬鬆許可證v2 ...
  • 引言 在當前的IT行業,無論是校園招聘還是社會招聘,MySQL的重要性不言而喻。 面試過程中,MySQL相關的問題經常出現,這不僅因為它是最流行的關係型資料庫之一,而且在日常的軟體開發中,MySQL的應用廣泛,尤其是對於Java後端開發者來說,熟練掌握MySQL已成為他們技術能力評估的重要指標。 因 ...
  • 不同於Oracle:SEQUENCE的區別 前言 在使用Oracle資料庫SEQUENCE功能時,發現Oracle對邊界處理比較奇怪。剛好GreatSQL也支持SEQUENCE,就拿來一起比較一下。 先說結論:GreatSQL 的使用基本和Oracle基本一致,但是對 START WITH 的邊界限 ...
  • 1.綜述 Hive的聚合函數衍生的視窗函數在我們進行數據處理和數據分析過程中起到了很大的作用 在Hive中,視窗函數允許你在結果集的行上進行計算,這些計算不會影響你查詢的結果集的行數。 Hive提供的視窗和分析函數可以分為聚合函數類視窗函數,分組排序類視窗函數,偏移量計算類視窗函數。 本節主要介紹聚 ...
  • 使用 mysqldump 備份表 powershell 下使用 | Out-file -Encoding utf8 設置字元格式 .\mysqldump.exe --single-transaction --user=root --password=123456 --host 127.0.0.1 - ...
  • 本篇文章主要介紹了GaussDB(DWS)性能調優涉及到的優化器和系統級GUC參數,通過合理配置這些GUC參數,能夠充分利用好CPU、記憶體、磁碟IO和網路IO等資源,提升語句的執行性能和GaussDB(DWS)集群的整體性能。 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...