互聯網世界里最流行的開源關系型資料庫之一就是MySQL/MariaDB了,由于高度的相似,故而直接使用mysql統一指稱,
windows下的安裝
windows最吸引人的地方就在于易于安裝,mysql在WINDOWS下也是最容易安裝的,直接在官網上下載可安裝程式,一路NEXT即可,
ubuntu18.04的安裝
如果是生產環境部署,建議以普通用戶角色,使用sudo命令方式安裝,從而兼顧安全性與權限充足,如果讀者是開發者,在測驗環境下使用root帳號,則可以直接輸入命令,
# 獲得最新的安裝資料 apt update apt upgrade -y # 安裝mysql服務 apt install -y mysql-server apt install -y libmysqlclient-dev # 查看網路診聽 netstat -tap | grep mysql # 進行安全配置 mysql_secure_installation # 常見問題處理方法 # 出現“Would you like to setup VALIDATE PASSWORD plugin?”,可以直接選擇無視, # 出現“Disallow root login remotely? ”時,如果不止從本地訪問資料庫,可以回車選擇無視 # 出現“Remove test database and access to it? ”,可以回車選擇洗掉測驗用資料庫 # vim /etc/mysql/mysql.conf.d/mysqld.cnf # 注釋掉bind-address這一行,因為本行要求MYSQL服務只服務于本地,也可以使用sed陳述句直接封閉,推薦使用sed陳述句,簡潔有力 sed -i 's/bind-address/#bind-address/g' /etc/mysql/mysql.conf.d/mysqld.cnf # 進行授權作業 mysql -u root -p mysql> grant all privileges on *.* to 'root'@'%' identified by 'hl100800' with grant option; mysql> exit systemctl restart mysql systemctl restart mysql systemctl status mysql ## mysql測驗 在windows下能夠訪問mysql的工具很多,包括但不限于: * Mysql官方提供的各類工具,包括GUI與命令列的, * Mycli * DBeaver * PhpMyAdmin * HeidiSQL * Induction * DbNinja * Pinba * Monyog * Gh-ost * Chive * SQL Lite Manager * Sqlcheck * Orchestrator * MySQLDumper * Navicat(付費) 筆者平時使用DBeaver這個GUI工具,不僅免費,而且能夠訪問多個資料庫,非常推薦,PhpMyAdmin是老牌工具了,安裝部署也非常方便,對于開發者而言,直接在vscode中安裝相關的插件更是值得推薦,畢竟不脫離開發環境,不切換軟體就直接完成任務,對于處在心流狀態下的程式員非常必要, 與前文提到的嵌入式資料庫sqlite不同,mysql是客戶端與服務器端分離的,mysql有著良好的高并發、高吞吐的特性,此外,也支持資料庫集群、主備切換、讀寫分離等優秀特性,本文不再贅述,最好的學習方法就是訪問官網,看官方檔案,在使用python進行mysql開發時,務必關注: * 在指定服務器上正確安裝mysql,并且啟動相關服務,檢查防火墻的配置 * 建立好正確的權限 * 為資料庫、表配置正確的字符集 * 為mysql服務配置系統引數(記憶體、檔案句柄數)等 ## python對資料庫的訪問 mysql提供對多種語言的支持,對于python來說,安裝以下包能夠直接訪問mysql, ```shell pip install mysql-connector pip install mysql-connector-python
以下代碼演示了創建資料庫、表的程序,
import mysql.connector host = 'localhost' user = 'root' password = '8848is8848' dbname = 'demodb' # 創建資料庫 demodb = mysql.connector.connect(host=host, user=user, password=password) democur = demodb.cursor() democur.execute(f'create database {dbname}') democur.execute('show databases') for x in democur: print(x) demodb.commit() democur.close() demodb.close() # 創建資料庫成功后創建表結構 demodb = mysql.connector.connect( host=host, user=user, password=password, database=dbname) democur = demodb.cursor() sql_createtable = 'create table demotb(id int not null auto_increment,pm25 float not null,primary key(id))' democur.execute(sql_createtable) demodb.commit() democur.close() demodb.close()
以上代碼創建了demodb資料庫,并且在這個庫下創建了demotb資料表,這個表非常簡單:
◎id,整數型別做為主鍵,并且能夠自動增長,
◎pm25,浮點數,未來存盤環境檢測的pm2.5的值,
◎考慮采樣是固定頻率,所以不需要時間,使用id標記時點,
后文將填充相關的值,并且使用python來查詢與可視化相關的資料,
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/541548.html
標籤:其他
