Python 股票分析:串接 MySQL 資料庫

第一步 安裝 MySQL

sudo apt-get update
sudo apt-get install mysql-server

跑一個簡單的程式幫助設置 MySQL 讓 MySQL 使用上更安全

sudo mysql_secure_installation

安裝完成後使用 sudo 進入 MySQL

sudo mysql

建立一個新使用者,有可能 MySQL 因為剛剛有 validate_password 這個插件 (plugin) 的關係,密碼需要複雜一些。

CREATE USER 'grandma'@'localhost' IDENTIFIED WITH mysql_native_password BY 'Grandma_sql123';

詳細密碼的要求請輸入指令

SHOW VARIABLES LIKE 'validate_password%';

再來給我們的 grandma 使用者夠大的權限,方便之後的操作

GRANT ALL PRIVILEGES ON *.* TO 'grandma'@'localhost' WITH GRANT OPTION;

到這邊就算告一段落啦!可以離開了

exit

第二步 建立一個獨立的 Python虛擬環境 (推薦)

我們可以啟動 Anaconda Navigator,並且創建一個 virtual environment,這樣可以讓每個專案內所安裝的 package 獨立,如果之後想要換一台電腦繼續工作,也可以把這個 virtual environment 複製下來,並再另外一台電腦重新建起。

打開 anaconda navigator 後,點擊左邊的 Environments,可以看到目前只有一個 base(root) 的環境。

點擊下的 Create

創建一個新的環境取名叫 stock

當然你也可以使用 command line 來創建( Windows 的命令提示字元,或是 Linux 的終端機)

conda create --name stock python==3.7

記得創建完後需要啟動 (activate) 他

conda activate stock

如果不想再使用這個虛擬環境

conda deactivate

第三步 安裝 mysql-connector-python

請在 database 這個虛擬環境下安裝 mysql-connector-python 這個套件,像上面說的,記得要先 activate ,不然套件會裝到 base(root)。使用 pip 來安裝

pip install mysql-connector-python

你可能會在查詢 mysql python 的相關資料時看到有人在使用 MySQL-python 這個套件,並且使用 MySQLdb。這個套件已經很久沒有維護了,而且安裝也不容易,因此完全不建議使用這個套件。

第四步 測試 mysql-connector-python

寫一個簡單的 Python Script (推薦使用 Spyder)

import mysql.connector

mydb = mysql.connector.connect(
  host="localhost",
  user="grandma",
  passwd="Grandma_sql123"
)

print(mydb)

如果沒有噴 error ,就代表成功囉!

參考資料

建置 MySQL 可以參考這篇文章
https://www.digitalocean.com/community/tutorials/how-to-install-mysql-on-ubuntu-18-04

留言討論區