iT邦幫忙

第 11 屆 iThome 鐵人賽

DAY 20
0
Modern Web

慢慢帶你了解Flask系列 第 20

慢慢帶你了解Flask - Day20 Secret Talk(2):MySQL安裝和Python操作MySQL

  • 分享至 

  • xImage
  •  

大家好,我是長風青雲。今天是第二十天了~
今天要來分享我這幾天查MySQL下載安裝然後和python連接成功的感動~

可以跳過的廢話

我來先跟大家說個實話….我的存稿有五天~在開賽的那一個禮拜努力趕出來的。所以今日其實是9/15….對我來說啦XD
自從開始學習MySQL差不多有三天了,感想其實滿多的。
遙想大二(我老了),那個時候學asp.net,老師要我們連接資料庫,但是不知道為什麼或許是腦袋未開化?大家資料庫連裝都裝不起來……用的是Microsoft Server SQL 2012的樣子。
在那之後,內心一直對資料庫有陰影。所以就連做專題時的data(我處理的那部分),我是使用json還有xlsx進行儲存的。看到別組用MySQL,就會覺得別人特別厲害XD畢竟我連碰都沒怎麼碰過
然後三天前,終於把單字簿的部分完成,我開始觸碰MySQL,內心是拒絕的看著教學文。(腦袋裡不停murmur 如果世界上每個人都奉公守法,不拿別人資料那其實安全不安全也沒什麼必要吧?)
但是看完能操作一點後,想法就是……呀,用用也沒什麼,還增加安全性呢~
這篇大概其實就是各個網站的匯總~在最下方會有致謝與原網站的連結~

MySQL的安裝

因為我是windows,所以我的MySQL是到此載點安裝。
https://ithelp.ithome.com.tw/upload/images/20230606/20120116TenLef51Nn.png
我是按下方的~雖然容量比較大~但是總覺得……安全?以免什麼沒載到的那種心態。
接著就是安裝了,當時我安裝過程中卡載了Time remaining 7 seconds,上網一查要到工作管理員更多詳細資料找MySQL installer將根本沒佔任何cpu的那一個移除→安裝成功~
網路上是寫要將cpu和記憶體都佔零的那個移除,所以當時我移除的時候心裡有點慌,但幸好成功了XD
安裝好後你會看到這個畫面
https://ithelp.ithome.com.tw/upload/images/20230606/20120116MGVBtn5FE9.png
你的大框框中間是空的,你要到右邊按Add。
https://ithelp.ithome.com.tw/upload/images/20230606/20120116TYi8YxBKmJ.png
我選擇了8.0.17,我剛剛意識到似乎是因為我已經選了,他並不在選項當中。選好後按往右的那個箭頭就行。
https://ithelp.ithome.com.tw/upload/images/20230606/20120116ZFTZocfwv4.png
這是能夠讓你很好操作MySQL的介面((我沒比較過,但是我覺得真的很好用!
https://ithelp.ithome.com.tw/upload/images/20230606/20120116XLGEwFKMZl.png
因為我們要用python操作資料庫,所以下載他的connector。
然後我沒法再裝一次,你們就直接按Next就好,按完Next他會跟你確認你要使用的東西,你就按執行就能安裝完畢。
https://ithelp.ithome.com.tw/upload/images/20230606/20120116xUOZkA6qF3.png
我忘記安裝完後他是否會跳到這個頁面,但是如果沒有你可以在
https://ithelp.ithome.com.tw/upload/images/20230606/20120116EHDvhDo1ZT.png
按下Reconfigure,然後進入那個頁面。
接下來就是依照自己需求配置,我是按Standlone一直按Next到需要設置密碼上方是root的密碼與確認密碼下方是新增使用者按Next跟Execute就好。
然後你可以使用Workbench來操作你的MySQL。
https://ithelp.ithome.com.tw/upload/images/20230606/20120116eiWdw3s3Uy.png
按下MySQL Connections旁邊的+,設定連線名稱。
我在裡面試著寫了寫MySQL指令的程式後,回到了Python打算抓取資料。
https://ithelp.ithome.com.tw/upload/images/20230606/20120116eQPxhvBKdq.png
卻遇到了問題……authentication plugin 'calling_sha2_password' is not supported.
上網查後知道這是8.0後密碼解密方式不同,這樣安全性更高。但卻沒找到相關文獻,於是參考別人的文章將他進行修改。
到你MySQL底下的my.ini,按Ctrl+Fdefault_authentication_plugin將他的值改為mysql_native_password。改掉後回到你的Workbench打ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root';並執行。
接著你就可以使用python操作資料庫啦~
https://ithelp.ithome.com.tw/upload/images/20230606/20120116x5DkIa4Fin.png
今天就到這裡~接下來來說說感謝~畢竟這比較算是綜合文?

致謝

此網站教會我該下載什麼軟體,還有python如何操作MySQL
此網站教會我MySQL installer該如何安裝
此網站解決我密碼加密方式不同(好像8.0版後不一樣,但我沒找到如果是8.0後該怎麼寫)
此網站告訴我varchar和char異同,與適用地方
此網站教會我如何使用Workbench

預告

明天我們就要回到我們的Flask了,明天會做註冊的部分~終於要把資料寫進資料庫中啦~


上一篇
慢慢帶你了解Flask - Day19 Secret Talk(1):前言 + RSA實作(python to exe)
下一篇
慢慢帶你了解Flask - Day21 Secret Talk(3):註冊與驗證信發送
系列文
慢慢帶你了解Flask30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言