1、 導入hellodb.sql生成數據庫
[root@centos7 mysql]#mysql < /data/hellodb.sql
(1) 在students表中,查詢年齡大於25歲,且爲男性的同學的名字和年齡
MariaDB [hellodb]> select name,age from students where age>25 and gender='M';
+--------------+-----+
| name | age |
+--------------+-----+
| Xie Yanke | 53 |
| Ding Dian | 32 |
| Yu Yutong | 26 |
| Shi Qing | 46 |
| Tian Boguang | 33 |
| Xu Xian | 27 |
| Sun Dasheng | 104 |
+--------------+-----+
7 rows in set (0.00 sec)
(2) 以ClassID爲分組依據,顯示每組的平均年齡
MariaDB [hellodb]> select classid, avg(age) from students group by classid;
+---------+----------+
| classid | avg(age) |
+---------+----------+
| NULL | 27.0000 |
| 1 | 20.5000 |
| 2 | 46.0000 |
| 3 | 20.2500 |
| 4 | 24.7500 |
| 5 | 46.0000 |
| 6 | 21.0000 |
| 7 | 20.0000 |
+---------+----------+
8 rows in set (0.00 sec)
(3) 顯示第2題中平均年齡大於30的分組及平均年齡
MariaDB [hellodb]> select classid, avg(age) as Avage from students group by classid having Avage>30;
+---------+---------+
| classid | Avage |
+---------+---------+
| 2 | 46.0000 |
| 5 | 46.0000 |
+---------+---------+
2 rows in set (0.00 sec)
(4) 顯示以L開頭的名字的同學的信息
MariaDB [hellodb]> select * from students where name like 'L%';
+-------+-------------+-----+--------+---------+-----------+
| StuID | Name | Age | Gender | ClassID | TeacherID |
+-------+-------------+-----+--------+---------+-----------+
| 8 | Lin Daiyu | 17 | F | 7 | NULL |
| 14 | Lu Wushuang | 17 | F | 3 | NULL |
| 17 | Lin Chong | 25 | M | 4 | NULL |
+-------+-------------+-----+--------+---------+-----------+
3 rows in set (0.00 sec)
2、數據庫授權magedu用戶,允許192.168.1.0/24網段可以連接mysql
MariaDB [mysql]> grant usage on . to 'magedu'@'192.168.1.%' identified by '123456';
Query OK, 0 rows affected (0.00 sec)MariaDB [mysql]> flush privileges;
Query OK, 0 rows affected (0.00 sec)MariaDB [mysql]> select host,User,Password from user where user='magedu';
+-------------+--------+-------------------------------------------+
| host | User | Password |
+-------------+--------+-------------------------------------------+
| 192.168.1.% | magedu | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |
+-------------+--------+-------------------------------------------+1 row in set (0.00 sec)
3、總結mysql常見的存儲引擎以及特點。
1、InnoDB引擎:
- 行級鎖
- 支持事務,適合處理大量短期事務
- 讀寫阻塞與事務隔離級別相關
- 可緩存數據和索引
- 支持聚簇索引
- 崩潰恢復性更好
- 支持MVCC高併發
- 從MySQL5.5後支持全文索引
- 從MySQL5.5.5開始爲默認的數據庫引擎
2、 MyISAM :- 不支持事務
- 表級鎖定
- 讀寫相互阻塞,寫入不能讀,讀時不能寫
- 只緩存索引
- 不支持外鍵約束
- 不支持聚簇索引
- 讀取數據較快,佔用資源較少
- 不支持MVCC(多版本併發控制機制)高併發
- 崩潰恢復性較差
- MySQL5.5.5前默認的數據庫引擎
3、BLACKHOLE :黑洞存儲引擎接受但不存儲數據,檢索總是返回一個空集。該功 能可用於分佈式數據庫設計,數據自動複製,但不是本地存儲;
4、Performance_Schema:Performance_Schema數據庫使用;
5、CSV:CSV存儲引擎使用逗號分隔值格式將數據存儲在文本文件中。可以使用 CSV引擎以CSV格式導入和導出其他軟件和應用程序之間的數據交換 ;
6、ARCHIVEArchive :爲存儲和檢索大量很少參考的存檔或安全審覈信息,只支持 SELECT和INSERT操作;支持行級鎖和專用緩存區;
7、MEMORY :將所有數據存儲在RAM中,以便在需要快速查找參考和其他類似 數據的環境中進行快速訪問。適用存放臨時數據。引擎以前被稱爲HEAP引擎;
8、Federated聯合:用於訪問其它遠程MySQL服務器一個代理,它通過創建一 個到遠程MySQL服務器的客戶端連接,並將查詢傳輸到遠程服務器執行,而 後完成數據存取,提供鏈接單獨MySQL服務器的能力,以便從多個物理服務 器創建一個邏輯數據庫。非常適合分佈式或數據集市環境 ;
架構班的小夥伴作業看這裏哦:
1、安裝部署ELK,並收集haproxy,nginx日誌