Python筑基之旅-MySQL數據庫(一)

目錄

一、MySQL數據庫

1、簡介

2、優點

2-1、開源和免費

2-2、高性能

2-3、可擴展性

2-4、易用性

2-5、靈活性

2-6、安全性和穩定性

2-7、豐富的功能

2-8、結合其他工具和服務

2-9、良好的兼容性和移植性

3、缺點

3-1、對大數據的支持有限????????

3-2、缺乏全文索引

3-3、缺乏地理空間數據支持

3-4、存儲引擎的局限性

3-5、配置和管理復雜性

3-6、安全性問題

4、應用

4-1、Web應用開發

4-1-1、動態網站

4-1-2、內容管理系統(CMS)

4-2、企業應用

4-2-1、企業資源規劃(ERP)

4-2-2、客戶關系管理(CRM)

4-3、數據分析與數據挖掘

4-3-1、數據倉庫

4-3-2、數據挖掘與機器學習

4-4、游戲開發

4-4-1、在線游戲

4-4-2、游戲統計與分析

4-5、移動應用開發

4-5-1、后端數據存儲

4-5-2、用戶認證與授權

4-6、物聯網(IoT)

4-6-1、設備數據存儲

4-7、電子商務

4-7-1、購物車與訂單管理

4-7-2、庫存管理與物流跟蹤

4-8、金融與銀行業

4-8-1、賬戶管理

4-8-2、風險管理

5、安裝及配置

5-1、版本選擇

5-2、下載MySQL 8.0

5-3、安裝MySQL 8.0

5-4、配置MySQL 8.0

二、推薦閱讀?

1、Python函數之旅

2、Python算法之旅

3、博客個人主頁

一、MySQL數據庫

1、簡介

????????MySQL是一個關系型數據庫管理系統(Relational Database Management System,RDBMS),由瑞典MySQL AB公司開發,現在屬于Oracle旗下產品,是最流行的關系型數據庫管理系統之一,尤其在WEB應用方面,它是最好的RDBMS應用軟件之一。

2、優點

2-1、開源和免費

????????MySQL是一個開源項目,這意味著任何人都可以查看、修改和使用其源代碼,它提供了免費的社區版,為開發者和初創企業提供了低成本的解決方案。

2-2、高性能

????????MySQL經過優化,能夠處理大量的數據和高并發的訪問請求,它支持多種存儲引擎,如InnoDB(支持事務處理和外鍵)、MyISAM(高性能全文搜索)等,可以根據不同的應用需求選擇合適的存儲引擎。

2-3、可擴展性

????????MySQL支持分布式架構,可以通過分庫分表、讀寫分離等方式實現水平擴展,它還提供了集群和復制功能,可以確保數據的高可用性和容錯性。

2-4、易用性

????????MySQL提供了豐富的文檔和社區支持,使得學習和使用變得相對容易,它使用SQL語言作為查詢語言,與大多數關系型數據庫管理系統兼容。

2-5、靈活性

????????MySQL支持多種操作系統,包括Linux、Windows、macOS等,它提供了多種編程語言的API和連接器,如Java、Python、PHP等,方便開發者集成到各種應用中。

2-6、安全性和穩定性

????????MySQL提供了強大的用戶權限和訪問控制功能,可以保護數據的安全性,它還提供了數據加密、審計日志等安全特性,確保數據的完整性和可審計性,MySQL經過長時間的測試和優化,具有出色的穩定性和可靠性。

2-7、豐富的功能

????????MySQL支持存儲過程、觸發器、視圖等高級功能,使得開發者能夠更靈活地操作數據,它還提供了全文搜索、地理空間數據支持、JSON處理等功能,滿足不同應用的需求。

2-8、結合其他工具和服務

????????MySQL可以與許多流行的開發工具、框架和服務集成,如Docker、Kubernetes、AWS RDS等,這使得開發者能夠更輕松地構建、部署和管理MySQL應用。

2-9、良好的兼容性和移植性

????????MySQL與其他關系型數據庫管理系統(如Oracle、SQL Server等)在SQL語法和功能上具有較高的兼容性,這使得開發者能夠更容易地將應用從其他數據庫遷移到MySQL上。

????????總之,MySQL數據庫的開源性、高性能、可擴展性、易用性、靈活性、安全性和穩定性等特點使其成為眾多開發者和企業的首選關系型數據庫管理系統。

3、缺點

3-1、對大數據的支持有限????????

????????相比于一些專門為大數據設計的數據庫系統(如Hadoop、Spark等),MySQL在處理超大規模數據集時可能會遇到性能瓶頸。

3-2、缺乏全文索引

????????在早期的版本中,MySQL的MyISAM存儲引擎支持全文索引,但InnoDB存儲引擎默認不支持。雖然可以通過第三方插件或搜索引擎(如Elasticsearch)來實現全文搜索,但這會增加額外的復雜性和成本。

3-3、缺乏地理空間數據支持

????????MySQL對地理空間數據的支持相對較弱,如果需要處理與地理位置相關的數據,可能需要使用專門的GIS數據庫系統或擴展MySQL的功能。

3-4、存儲引擎的局限性

????????雖然MySQL支持多種存儲引擎,但每種存儲引擎都有其局限性。例如,InnoDB存儲引擎支持事務和行級鎖定,但在某些情況下可能會比MyISAM慢;MyISAM不支持事務和行級鎖定,但在某些只讀或大量讀取的場景下可能表現更好。

3-5、配置和管理復雜性

????????MySQL的配置和管理相對復雜,需要一定的專業知識和技能,對于初學者來說,可能需要花費更多的時間來學習和掌握。

3-6、安全性問題

????????雖然MySQL提供了多種安全功能和權限控制機制,但在某些情況下仍然可能存在安全漏洞或風險,因此,需要定期更新和修補MySQL的安全漏洞,并加強密碼管理和訪問控制。

4、應用

????????MySQL數據庫的應用場景非常廣泛,幾乎涵蓋了所有需要存儲、管理和查詢數據的領域,其常見的應用場景有:

4-1、Web應用開發
4-1-1、動態網站

????????MySQL常用于構建動態網站和Web應用程序,如博客、電子商務網站、社交媒體平臺等,它可以通過與PHP、Python、Java等后端語言配合,實現用戶注冊、登錄、商品展示、訂單管理等功能。

4-1-2、內容管理系統(CMS)

????????許多內容管理系統(如WordPress、Drupal、Joomla等)使用MySQL作為其后端數據庫,用于存儲和管理網站內容、用戶數據等。

4-2、企業應用
4-2-1、企業資源規劃(ERP)

????????ERP系統用于管理企業的各種資源,如財務、人力資源、供應鏈等,MySQL可以用于存儲和查詢ERP系統中的數據。

4-2-2、客戶關系管理(CRM)

????????CRM系統用于管理企業與客戶的關系,包括客戶信息、銷售機會、客戶服務等,MySQL可以提供強大的數據存儲和查詢功能,支持CRM系統的各種業務需求。

4-3、數據分析與數據挖掘
4-3-1、數據倉庫

????????MySQL可以用于構建數據倉庫,將來自不同數據源的數據整合到一個統一的存儲庫中,方便進行數據分析和數據挖掘。

4-3-2、數據挖掘與機器學習

????????雖然MySQL本身不是一個專門用于數據挖掘和機器學習的工具,但它可以作為數據存儲和預處理的一部分,與數據挖掘和機器學習算法結合使用。

4-4、游戲開發
4-4-1、在線游戲

????????MySQL常用于在線游戲的服務器后端,用于存儲和管理游戲數據,如玩家信息、游戲進度、排行榜等。

4-4-2、游戲統計與分析

????????通過MySQL存儲游戲數據,開發者可以進行游戲統計和分析,了解玩家的行為和喜好,優化游戲體驗。

4-5、移動應用開發
4-5-1、后端數據存儲

????????許多移動應用需要與后端服務器進行交互,MySQL可以作為后端服務器的數據庫,存儲和管理移動應用的數據。

4-5-2、用戶認證與授權

????????MySQL可以用于實現移動應用的用戶認證和授權功能,確保用戶數據的安全性和隱私性。

4-6、物聯網(IoT)
4-6-1、設備數據存儲

????????隨著物聯網技術的發展,越來越多的設備需要連接到互聯網并傳輸數據,MySQL可以用于存儲這些設備的數據,方便進行實時監控和數據分析。

4-7、電子商務
4-7-1、購物車與訂單管理

????????MySQL可以存儲和管理用戶的購物車信息、訂單詳情等,支持電子商務網站的交易流程。

4-7-2、庫存管理與物流跟蹤

????????通過MySQL存儲庫存信息和物流數據,可以實現庫存的實時監控和物流的跟蹤管理。

4-8、金融與銀行業
4-8-1、賬戶管理

????????MySQL可以存儲和管理客戶的賬戶信息、交易記錄等,支持金融和銀行業務的正常運行。

4-8-2、風險管理

????????通過MySQL存儲和分析客戶的風險數據,銀行可以更好地評估和管理風險。

????????總之,上述只是MySQL數據庫的一些常見應用場景,實際上它的應用領域遠不止這些。隨著技術的不斷發展和業務的不斷擴展,MySQL的應用場景也在不斷擴大。

5、安裝及配置

5-1、版本選擇

????????版本信息:mysql-installer-community-8.0.37.0

5-2、下載MySQL 8.0

5-2-1、下載地址:MySQL官網下載地址? ? ?,打開mysql-installer-community-8.0.37.0下載頁面,選擇Microsoft Windows平臺,然后根據自身的平臺選擇32位或者64位安裝包,在這里選擇32位,單擊右側【Download】按鈕。

?5-2-2、單擊【Download】按鈕后,進入下載界面:

5-2-3、點擊【No thanks,just start my download】鏈接,會彈出【新建下載任務】界面,如下圖:

?5-2-4、單擊【下載】按鈕后,開始文件下載,如下圖:

????????畢竟這是從境外網站下載,很多時候會限流,但千萬不要一直等,可以嘗試刪除下載鏈接后,重新單擊【Download】下載即可。

5-2-3、在剛剛設置的下載位置【E:\360Downloads】,找到安裝文件,如下圖:

5-3、安裝MySQL 8.0

? ? ? ? MySQL下載完成后,找到下載文件,鼠標左鍵雙擊進行安裝,具體步驟如下:

5-3-1、雙擊下載的mysql-installer-community-8.0.37.0.msi文件,開始安裝向導。

5-3-2、打開【Choosing a Setup Type】(安裝類型選擇)界面,共列出了4種安裝類型,分別是:Server only(僅作為服務器)、Client only(僅作為客戶端)、Full(完全安裝)和Custom(自定義安裝),我們選擇【Custom】(自定義安裝)單選按鈕,單擊【Next>】(下一步)按鈕,如下圖所示:

5-3-3、在【Select Products】(選擇產品) 窗口,依次選擇:【MySQL Server 8.0.37 - x64】、【Samples and?Examples 8.0.37 - x86】(注:這是我的需求,請根據自身需求增減調整即可)后,單擊【→】按鈕添加。

若需要更改產品安裝路徑的,可以在【Products To Be Installed】界面選中產品,單擊【Advanced Options】超鏈接,進入下圖中:

?5-3-4、單擊【Next>】(下一步)按鈕,進入【Installation】(準備安裝對話框):

5-3-5、開始安裝MySQL相關產品,安裝完成后,在【Status】(狀態)列表下將顯示Complete(安裝完成)?,如下圖:

5-3-6、?單擊【Next>】(下一步)按鈕,進入:

5-4、配置MySQL 8.0

????????MySQL安裝完畢后,需要對服務器進行相關配置。具體配置步驟如下:

5-4-1、在5-3-6節的最后一步中,單擊【Next>】(下一步)按鈕,將進入【Product Configuration】(產品信息窗口),如下圖:

?5-4-2、單擊【Next>】(下一步)按鈕,將進入【Type and Networking】(服務器類型配置)窗口,采用默認設置,如下圖:

? ? ? ? 其中,【Config Type】選項用于設置服務器的類型,單擊該選項右側的下拉箭頭,即可看到3個選項,如下圖:

????????3個選項的具體含義如下:

?※ Development Computer(開發機):該選項代表典型個人用桌面工作站,假定機器上運行著多個桌面應用程序,將MySQL服務器配置成使用最少得系統資源。

Server Machine(服務器):該選項代表服務器,MySQL服務器可以同其他應用程序一起運行,如Web和Email服務器,MySQL服務器配置成使用適當比例的系統資源。

Dedicated Machine(專用服務器):該選項代表只運行MySQL服務的服務器,假定沒有其他運行程序,MySQL服務器配置成使用100%的系統資源。

5-4-3、單擊【Next>】(下一步)按鈕,進入【Authentication Method】(設置授權方式)窗口:

? ? ? ? 其中,有兩個單選按鈕,說明如下:

第1個單選按鈕:MySQL 8.0 提供的新的授權方式,采用SHA256基礎的加密方法。

第2個單選按鈕:傳統授權方法(保留了對5.x版本的兼容性)。

? ? ? ? 這里,我們選擇第二個單選按鈕。

5-4-4、單擊【Next>】(下一步)按鈕,打開設置服務器的密碼窗口,如下圖:

5-4-5、單擊【Add User】(新增用戶)按鈕后,彈出【MySQL User Account】窗口,如下圖:

5-4-6、單擊【Next>】(下一步)按鈕,打開【Windows Service】窗口,我們可以去掉版本號,保留服務器名稱為"MySQL",如下圖:

5-4-7、?單擊【Next>】(下一步)按鈕,打開【Server File Permissions】(服務器文件權限)界面,如下圖:

5-4-8、?單擊【Next>】(下一步)按鈕,打開【Apply Configuration】(應用配置)界面,如下圖:

5-4-9、單擊【Execute】(執行)按鈕,即可完成服務器的配置,如下圖:

5-4-10、單擊【Finish】 (完成)按鈕,打開【Connect To Server】(連接到服務器)界面,如下圖:

5-4-11、單擊【Next>】(下一步)按鈕,打開【Apply Configuration】(應用配置)窗口,如下圖:

????????單擊【Execute】(執行)按鈕后,完成配置應用操作。如下圖:?

5-4-12、單擊【Finish】 (完成)按鈕,打開【Product Configuration】(產品配置)界面,如下圖:

5-4-13、單擊【Next>】(下一步)按鈕,進入【Installation Complete】(安裝完成)界面,如下圖:

????????點擊【Finish】(完成)按鈕,即可完成MySQL數據庫的配置操作。?

5-4-14、按鍵盤組合鍵【Ctrl+Alt+Del】,打開【任務管理器】窗口,如下圖:?

????????MySQL服務進程mysqld.exe已經啟動了,說明我們已經在Windows 10操作系統環境下成功安裝了MySQL數據庫。

說明:因每個人的系統環境不一樣,安裝過程中,難免會遇到這樣或那樣的問題,在此就不一一展開分析,若有需要提供支持,請加本人微信溝通及交流。?

二、推薦閱讀?

1、Python函數之旅

2、Python算法之旅

3、博客個人主頁

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

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

相關文章

微服務如何做好監控

大家好,我是蒼何。 在脈脈上看到這條帖子,說阿里 P8 因為上面 P9 斗爭失敗走人,以超齡 35 被裁,Boss 上找工作半年,到現在還處于失業中。 看了下溝通記錄, 溝通了 1000 多次,但沒有一個邀請投遞…

uniapp中使用 iconfont字體

下載 iconfont 字體文件 打開 iconfont.css 文件,修改一下 把文件 復制到 static/iconfont/… 目錄下 在App.vue中引入iconfont 5. 使用iconfont 使用 iconfont 有兩種方式, 一種是 class 方式, 一種是使用 unicode 的方式 5.1 使用 class 的…

【Mac】Dreamweaver 2021 for mac v21.3 Rid中文版安裝教程

軟件介紹 Dreamweaver是Adobe公司開發的一款專業網頁設計與前端開發軟件。它集成了所見即所得(WYSIWYG)編輯器和代碼編輯器,可以幫助開發者快速創建和編輯網頁。Dreamweaver提供了豐富的功能和工具,包括代碼提示、語法高亮、代碼…

51單片機學習(1)2-1點亮一個LED

#include <REGX52.H> void() { p20xFE;//1111 1110 while(1) { //讓程序停了下來了。 } }

教你一分鐘搭建適合IT人員的在線開發工具箱

文章目錄 1. 使用Docker本地部署it-tools2. 本地訪問it-tools3. 安裝cpolar內網穿透4. 固定it-tools公網地址 本篇文章將介紹如何在Windows上使用Docker本地部署IT- Tools&#xff0c;并且同樣可以結合cpolar實現公網訪問。 在前一篇文章中我們講解了如何在Linux中使用Docker搭…

Anaconda Jupyter 報錯及解決方法記錄

一、AttributeError: module lib has no attribute X509_V_FLAG_CB_ISSUER_CHECK 背景&#xff1a;Anaconda更新版本后&#xff0c;運行import oss2時報錯 ~/anaconda3/lib/python3.8/site-packages/OpenSSL/crypto.py in X509StoreFlags() 1535 NOTIFY_POLICY _lib…

【Java基礎】集合(1) —— Collection

存儲不同類型的對象: Object[] arrnew object[5];數組的長度是固定的, 添加或刪除數據比較耗時 集合: Object[] toArray可以存儲不同類型的對象隨著存儲的對象的增加&#xff0c;會自動的擴容集合提供了非常豐富的方法&#xff0c;便于操縱集合相當于容器&#xff0c;可以存儲多…

探索Git之旅:倉庫代碼版本控制藝術

探索Git之旅&#xff1a;倉庫代碼版本控制藝術 引言Git基礎與核心概念什么是版本控制&#xff1f;Git的工作流程分布式特性 Git實戰操作指南安裝與配置克隆倉庫日常操作分支管理解決沖突 高級技巧與最佳實踐Git FlowGit鉤子Git別名 安全與性能考量結語與引發討論 引言 在軟件開…

馮喜運:5.16黃金是否突破阻力?黃金原油趨勢分析

【黃金消息面分析】&#xff1a;周四(5月16日)亞市盤中&#xff0c;現貨黃金延續昨日升勢&#xff0c;金價目前最高觸及2397.44美元/盎司&#xff0c;為4月19日以來新高。FXStreet首席分析師Valeria Bednarik撰文&#xff0c;對黃金技術前景進行分析。Bednarik指出&#xff0c;…

「51媒體」北京財經媒體有哪些?媒體邀約宣傳

傳媒如春雨&#xff0c;潤物細無聲&#xff0c;大家好&#xff0c;我是51媒體網胡老師。 北京作為中國的首都&#xff0c;擁有眾多的財經媒體&#xff0c;這些媒體在財經新聞報道、經濟分析、市場研究等方面發揮著重要作用。根據搜索結果&#xff0c;以下是一些北京地區的財經…

富格林:曝光虛假套路規避虧損

富格林指出&#xff0c;在現貨黃金市場中&#xff0c;交易時間很充足投資機會也多的是&#xff0c;但為什么還是有人虧損甚至爆倉呢&#xff1f;其實導致這種情況&#xff0c;是因為有一些投資者不知道其中的虛假套路&#xff0c;很容易就一頭栽進去了。要規避虛假套路帶來的虧…

CV每日論文--2024.5.15

1、Can Better Text Semantics in Prompt Tuning Improve VLM Generalization? 中文標題&#xff1a;更好的文本語義在提示微調中能否提高視覺語言模型的泛化能力? 簡介&#xff1a;這篇論文介紹了一種新的可學習提示調整方法,該方法超越了僅對視覺語言模型進行微調的傳統方…

Lazyboy品牌發布會“球幕氣膜”

Lazyboy品牌發布會“球幕氣膜”為品牌活動提供了一個獨特、現代化、環保的展示空間。這座球幕氣膜不僅為發布會提供了一個視覺震撼的場地&#xff0c;也為與會嘉賓帶來了全新的體驗。作為輕空間&#xff08;江蘇&#xff09;膜科技有限公司&#xff08;以下簡稱“輕空間”&…

使用Docker在阿里云ECS上部署Gitlab,提供代碼托管、CICD 和 docker鏡像服務

文章目錄 使用Docker在阿里云ECS上部署Gitlab1.購買一個數據&#xff0c;掛載到/data用于存儲gitlab相關數據2. 部署docker引擎3. 調整ssh的默認端口&#xff0c;將22端口留給gitlab4. 部署gitlab5. 進入docker容器獲取gitlab的默認密碼6. 登錄gitlab&#xff0c;完成gitlab-ru…

linux ndk編譯搭建測試

一、ndk下載 NDK 下載 | Android NDK | Android Developers 二、ndk環境變量配置 ndk解壓&#xff1a; unzip android-ndk-r26d-linux.zip 環境變量配置&#xff1a; export NDK_HOME/rd/own/test/android-ndk-r26d/ export PATH$PATH:$NDK_HOME 三、編譯測試驗證 …

虛函數應用和原理

虛函數的表現形式 用子類初始化父類指針, 調用虛函數時, 仍然調用的是子類的虛函數 測試代碼如下 #include <iostream> #include <string.h>using namespace std;class A { public:void test() { cout << a << endl; };virtual void test2 (){ cout …

LeetCode-2589. 完成所有任務的最少時間【棧 貪心 數組 二分查找 排序】

LeetCode-2589. 完成所有任務的最少時間【棧 貪心 數組 二分查找 排序】 題目描述&#xff1a;解題思路一&#xff1a;貪心暴力解題思路二&#xff1a;棧二分查找解題思路三&#xff1a;簡化版 題目描述&#xff1a; 你有一臺電腦&#xff0c;它可以 同時 運行無數個任務。給你…

解鎖電商數據之門:京東商品詳情API接口的深度解析與應用指南

一、京東商品詳情API簡介 京東商品詳情API是京東開放平臺提供的一項服務&#xff0c;允許第三方應用通過調用接口獲取京東商城中商品的詳細信息。這些信息包括但不限于商品名稱、價格、庫存、詳情描述、用戶評價等。 二、功能特點 數據全面&#xff1a;提供商品的全方位數據…

mac安裝兩個版本谷歌瀏覽器;在mac運行不同版本的chrome瀏覽器

場景 正常情況下&#xff0c;mac上只能安裝一個版本的chrome瀏覽器&#xff0c;即使你安裝了兩個版本的&#xff0c;打開老舊版本時候也會自動切換成最新版的瀏覽器 故本文主要解決如何下載和在mac運行不同版本的chrome瀏覽器 文章目錄 場景一、下載1.mac本身就有一個最新版ch…

Java語言saas模式云HIS系統源碼 前端Angular+后臺SpringBoot云HIS系統源碼 HIS系統適合哪些類型的醫院?

Java語言saas模式云HIS系統源碼 前端Angular后臺SpringBoot云HIS系統源碼 HIS系統適合哪些類型的醫院&#xff1f; 云HIS系統&#xff08;醫院信息系統&#xff09;是對醫院及其所屬各部門的人、財、物進行綜合管理&#xff0c;對在醫療活動各階段產生的數據進行采集、儲存、處…