SpringBoot新手快速入門系列教程二:MySql5.7.44的免安裝版本下載和配置,以及簡單的Mysql生存指令指南。

我們要如何選擇MySql

目前主流的Mysql有5.0、8.0、9.0

主要區別

MySQL 5.0
  • 發布年份:2005年
  • 特性
    • 基礎事務支持
    • 存儲過程、觸發器、視圖
    • 基礎存儲引擎(如MyISAM、InnoDB)
    • 外鍵支持
    • 基本的全文搜索
  • 性能和擴展性
    • 相對較慢,適合小型應用
    • 擴展性有限
  • 安全性
    • 基本的安全功能
    • 不支持較新的安全標準
MySQL 8.0
  • 發布年份:2018年
  • 特性
    • 原生JSON支持
    • CTE(Common Table Expressions)和窗口函數
    • 更強大的全文搜索
    • 更好的GIS支持
    • 持續時間的數據定義語言(DDL)
    • 自動數據壓縮和解壓縮
    • 角色支持和更好的權限管理
  • 性能和擴展性
    • 大幅提升的性能和可擴展性
    • 基于資源組的資源管理
    • 更好的并發處理
  • 安全性
    • 強化的安全功能,如逐步身份驗證、密碼策略
    • 數據加密支持
MySQL 9.0
  • 目前狀態:尚未發布(假設未來版本)
  • 預期特性
    • 更高級的數據分析功能
    • 改進的分布式數據庫支持
    • 更強的機器學習和人工智能集成
    • 更好的自動化和自我優化功能
  • 性能和擴展性
    • 預計在8.0基礎上進一步提升性能和可擴展性
    • 增強的多租戶支持
  • 安全性
    • 預期更高級別的安全和隱私保護功能

生產環境配置

MySQL 5.0
  • 適用場景:小型應用和遺留系統
  • 硬件需求:相對較低
    • CPU:單核或雙核處理器
    • 內存:2GB以上
    • 磁盤:普通HDD即可
  • 配置建議
    • 調整緩沖池和查詢緩存大小以適應小規模負載
MySQL 8.0
  • 適用場景:中大型應用,現代化的Web應用和數據密集型應用
  • 硬件需求:中高端配置
    • CPU:多核處理器(8核以上)
    • 內存:16GB以上(視數據量和負載而定)
    • 磁盤:SSD以提高I/O性能
  • 配置建議
    • 配置InnoDB緩沖池(innodb_buffer_pool_size)以匹配內存大小
    • 使用查詢優化器和性能模式進行調優
    • 開啟GTID(全局事務標識符)和復制以提高可靠性
    • 使用MySQL Enterprise Monitor進行監控
MySQL 9.0
  • 適用場景:未來的高性能、大規模分布式應用
  • 硬件需求:高端配置(假設)
    • CPU:高核數處理器(16核以上)
    • 內存:32GB以上(視數據量和負載而定)
    • 磁盤:高速SSD或NVMe驅動器
  • 配置建議
    • 預計會有更多的自動調優和智能配置選項
    • 強化的分布式數據庫配置和管理
    • 更高效的資源分配和負載均衡

選擇適合的版本和配置

  1. 小型應用或遺留系統

    • MySQL 5.0 可能已經足夠,但建議升級到至少MySQL 8.0以獲得更好的性能和安全性。
  2. 中大型應用和現代化Web應用

    • MySQL 8.0 是目前最佳選擇,提供了豐富的現代功能和改進的性能。
  3. 未來的高性能、大規模分布式應用

    • 關注MySQL 9.0的發展,并準備在其發布后進行評估和測試。

結論

在生產環境中選擇合適的MySQL版本和配置,主要取決于你的應用需求、數據量、并發負載和性能要求。MySQL 8.0 是目前推薦的版本,適用于大多數現代應用。未來的MySQL 9.0 將提供更多高級功能和性能改進,適合高性能、大規模應用的開發。

這里我們選擇Mysql5.7.44,因為5.x系列的數據庫可以部署在1核2gb內存的linux服務器上,成本最低。并且5.7.44是5.x系列最后一個版本,相對來說也是最穩定的一個版本。

所以現在我們來下載安裝一下Mysql

1,下載

MySQL :: Download MySQL Community Server (Archived Versions)

2,配置環境變量

為了方便使用MySQL命令行工具,可以將MySQL的bin目錄添加到系統的PATH環境變量中。

  1. 右鍵點擊“此電腦”或“我的電腦”,選擇“屬性”。
  2. 點擊“高級系統設置”。
  3. 點擊“環境變量”按鈕。
  4. 在“系統變量”部分,找到并選擇Path變量,點擊“編輯”。
  5. 點擊“新建”,然后輸入MySQL的bin目錄路徑,例如:C:\mysql-5.7.44\bin
  6. 點擊“確定”保存。

3. 創建配置文件

創建一個MySQL配置文件my.ini,并將其放置在MySQL的根目錄(例如C:\mysql-5.7.44)下。文件內容如下:

[mysqld]
# 設置MySQL的安裝目錄
basedir=D:/Program/mysql-5.7.44-win32# 設置MySQL數據庫的數據存放目錄
datadir=D:/Program/mysql-5.7.44-win32/data# 設置端口
port=3306# 設置字符集
character-set-server=utf8mb4# 設置sql模式
sql_mode=NO_ZERO_DATE,NO_ZERO_IN_DATE,ERROR_FOR_DIVISION_BY_ZERO,STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER# 設置錯誤消息文件位置
lc-messages-dir=D:/Program/mysql-5.7.44-win32/share# 禁用日志記錄
log_syslog=0# 啟用TLSv1.2并禁用過時的TLS版本
ssl-cipher=TLSv1.2
tls-version=TLSv1.2# 其他設置
default-storage-engine=INNODB

4. 初始化數據庫

????????

  1. 以管理員身份運行命令行,win下面點擊左下角window按鈕,輸入cmd,在命令提示符右鍵點擊“以管理員身份運行命令行”

  2. 打開命令提示符(cmd)并導航到MySQL的bin目錄,如果你和我一樣把mysql放在d盤,要先在cmd上輸入命令d:再按Enter進入D盤再執行:

    d:

  3. cd D:\Program\mysql-5.7.44-win32\bin
  4. 初始化數據庫:

    mysqld --initialize --console --explicit_defaults_for_timestamp
    

    這條命令將在控制臺輸出一個臨時生成的root用戶密碼,記下這個密碼。值得注意下面會產生一些警告,是無法避免。

  5. 這些警告大多數是在初始化過程中出現的正常行為,用于提醒用戶當前系統的狀態和潛在的問題。它們是合理的,并且在大多數情況下無需特別處理。以下是一些應對措施:,InnoDB和UUID警告:這些警告是首次初始化時正常的,無需處理。GTID表警告:初始化后GTID表會正常創建,無需處理。TLS警告:在my.ini文件中指定使用TLSv1.2或更高版本。自簽名證書警告:測試環境中可以忽略,生產環境中建議使用受信任的CA證書。

5. 運行數據庫

mysqld --console

6. 修改用戶名密碼

?首先你需要運行起來mysql,然后以管理員身份新開一個命令行,用root用戶登錄到MySQL。打開命令提示符(cmd),并輸入以下命令:

mysql -u root -p

ALTER USER 'root'@'localhost' IDENTIFIED BY 'newpassword';

執行完上述命令后,刷新權限以使更改生效

FLUSH PRIVILEGES;

退出exit

EXIT;

7. 停止MySQL服務器

net stop MySQL

8. 以安全模式啟動MySQL服務器

以安全模式啟動MySQL服務器(使用 --skip-grant-tables 選項)通常在你無法正常連接到MySQL服務器或需要重置root用戶密碼的情況下使用。

1,在命令提示符中,導航到MySQL的安裝目錄下的bin目錄,例如:

cd D:\Program\mysql-5.7.44-win32\bin

2,使用 --skip-grant-tables--skip-networking 選項啟動MySQL服務器:

mysqld --skip-grant-tables --skip-networking

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/41004.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/41004.shtml
英文地址,請注明出處:http://en.pswp.cn/web/41004.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

2024年江蘇省研究生數學建模競賽B題火箭煙幕彈運用策略優化論文和代碼分析

經過不懈的努力, 2024年江蘇省研究生數學建模競賽B題火箭煙幕彈運用策略優化論文和代碼已完成,代碼為B題全部問題的代碼,論文包括摘要、問題重述、問題分析、模型假設、符號說明、模型的建立和求解(問題1模型的建立和求解、問題2模…

[學習筆記]SQL學習筆記(連載中。。。)

學習視頻:【數據庫】SQL 3小時快速入門 #數據庫教程 #SQL教程 #MySQL教程 #database#Python連接數據庫 目錄 1.SQL的基礎知識1.1.表(table)和鍵(key)1.2.外鍵、聯合主鍵 2.MySQL安裝(略,請自行參考視頻)3.基本的MySQL語法3.1.規…

進程控制-fork函數

一個進程,包括代碼、數據和分配給進程的資源。 fork ()函數通過系統調用創建一個與原來進程幾乎完全相同的進程,也就是兩個進程可以做完全相同的事,但如果初始參數或者傳入的變量不同,兩個進程也可以做不同…

DatawhaleAI夏令營2024 Task2

#AI夏令營 #Datawhale #夏令營 賽題解析一、Baseline詳解1.1 環境配置1.2 數據處理任務理解2.3 prompt設計2.4 數據抽取 二、完整代碼總結 賽題解析 賽事背景 在數字化時代,企業積累了大量對話數據,這些數據不僅是交流記錄,還隱藏著寶貴的信…

【鴻蒙學習筆記】@Link裝飾器:父子雙向同步

官方文檔:Link裝飾器:父子雙向同步 目錄標題 [Q&A] Link裝飾器作用 [Q&A] Link裝飾器特點樣例:簡單類型樣例:數組類型樣例:Map類型樣例:Set類型樣例:聯合類型 [Q&A] Link裝飾器作用…

信號與系統-實驗6-離散時間系統的 Z 域分析

一、實驗目的 1、掌握 z 變換及其性質;了解常用序列的 z 變換、逆 z 變換; 2、掌握利用 MATLAB 的符號運算實現 z 變換; 3、掌握利用 MATLAB 繪制離散系統零、極點圖的方法; 4、掌握利用 MATLAB 分析離散系統零、極點的方法&a…

字符串中的注意事項

在比較早的C/C版本中,經常可以看到推薦使用gets函數來進行整行字符串的輸入,就像下面這樣的簡單寫法即可輸入一整行: C gets(str);但是當輸入的字符串長度超過數組長度上限MAX_LEN時,gets函數會把超出的部分也一并讀進來&#x…

MySQL基礎篇(二)字符集以及校驗規則

在MySQL基礎篇(一)中,我們知道了如何創建數據庫,這篇文章帶大家了解創建的一些細節。 紅色框:可省略,作用如果存在相同的數據庫名稱,就不會再創建,反之,創建。 藍色框&…

uniapp 封裝請求

新建request文件夾 下新建index.js 和index.js 或者創建units文件放入index.js 和api文件夾放入index.js(api.js)//看公司規范 1. index.js // 全局請求封裝 // const base_url http://localhost:8080/devapi var base_url process.env.NODE_ENV development ? http://…

可用于多個微信管理的神器

以下僅是多微信聚合聊天管理界面: 可以在一個頁面上同時收發多個微信的消息,可以添加好友,通過好友請求。 可以修改昵稱,不受字數限制。 可以將常用圖片,文件等放入素材庫,方便聊天時查找和發送。 可以設置…

速盾:cdn 緩存圖片

現如今,互聯網已經成為我們日常生活中不可或缺的一部分。在我們使用互聯網時,經常會遇到圖片加載緩慢、文章打開慢等問題。為了解決這些問題,CDN(內容分發網絡)應運而生。CDN 是一種通過將數據緩存在世界各地的服務器上…

集群環境下,調用半數以上節點進行數據同步的實現

核心實現是使用CountDownLatch來實現的,先取集群節點總數一半以上數量的CountDownLatch 再發送請求調用其他節點,在這個過程中對于正常響應的節點進行latch.countDown(); 最后再統計數量是否為0再決定是否拋異常 // 請求參數final String content jso…

Java:封裝

文章目錄 一、概念二、實現三、測試四、總結 一、概念 在面向對象編程中, 封裝從字面上來理解就是包裝的意思,特點就是信息隱藏,防止該類的代碼和數據被外部類的代碼隨機訪問。 封裝的優點: 良好的封裝能夠減少耦合。 統一接口…

搜索旋轉數組

題目鏈接 搜索旋轉數組 題目描述 注意點 數組已被旋轉過很多次數組元素原先是按升序排列的若有多個相同元素,返回索引值最小的一個 解答思路 首先需要知道的是,本題數組中的旋轉多次只是將頭部的某些元素移動到尾部,所以不論怎么旋轉&am…

uni-app怎樣使用組件

在uni-app中使用組件,主要遵循以下幾個步驟: 創建組件文件:在UniApp項目中創建一個新的組件,通常將組件文件保存在components文件夾下。如果components文件夾不存在,需要先創建它。然后在components文件夾下創建一個新…

Pycharm python解釋器 unsupported python 3.1 解決

Pycharm 環境 unsupported python 3.1解決 1. 問題重現2. 原因分析3. 解決方法 1. 問題重現 之前使用Pycharm 2024.1.1的時候,環境配置的Python 3.11.9,現在改成使用Pycharm 2020.2.2,結果Python解釋器顯示“unsupported python 3.1”&#…

Java ORM框架FastMybatis踩坑

Java ORM框架FastmyBatis踩坑 問題:使用了FastmyBatis的saveOrUpdate方法,明明設置了主鍵的值且表中存在,但是依然執行insert操作。導致Duplicate PK。 原因:使用了其他第三方包的注解指定表的主鍵,沒有按照FastmyBat…

低音炮內存卡格式化后無法播放音樂文件

試了多次 不支持ntfs不支持exfat 僅支持fat32 FAT32與exFAT的區別主要體現在來源、單個文件限制、適用情況以及兼容性方面。12 來源: FAT32是Windows平臺的傳統文件格式,首次在Windows 95第二版中引入,旨在取代FAT16,具有良好的…

自動駕駛中的逆透視變換(Inverse Perspective Mapping,IPM)詳解

前言 IPM(Inverse Perspective Mapping,逆透視變換)圖的歷史可以追溯到計算機視覺和圖像處理領域的發展。逆透視變換是一種用于消除圖像中透視效應的技術,使得原本由于透視產生的形變得以糾正,進而更準確地描述和理解圖像中的場景。比如在行車中的車道線檢測,泊車中的常見…

陳志泊主編《數據庫原理及應用教程第4版微課版》的實驗題目參考答案實驗2

實驗目的 1.掌握在SQL Server中使用對象資源管理器和SQL命令創建數據庫與修改數據庫的方法。 2.掌握在SQL Server中使用對象資源管理器或者SQL命令創建數據表和修改數據表的方 法(以SQL命令為重點)。 實驗設備 操作系統:Win11…