iT邦幫忙

第 12 屆 iT 邦幫忙鐵人賽

DAY 5
1
AI & Data

一名合格的DBA要從底層一步步爬起系列 第 5

《Day5》有個屬於自己的MySQL資料庫

稍微介紹一下MySQL。

起初MySQL是一個open Source的關聯式資料庫,因為效能高、成本低,所以廣泛被用在中小型網站,也有被用於大規模的網站和應用 (EX: Netflix、Facebook),但現今已被Oracle收購。


前面說的那麼多,都還沒真正碰到資料庫,是不是感覺有點悶呢,現在我們就用Linux的環境,來動手建立自己的資料庫玩玩吧!

首先我們必須先到Oracle的網站,下載 MySQL community版本,此版本為免費,但官方不會提供任何支援。

載點如下:
https://dev.mysql.com/downloads/mysql/


我的測試環境為centos7,所以選擇Red hat Linux 7 (如下圖)。

https://ithelp.ithome.com.tw/upload/images/20200907/20129969K7Z8L5LsMQ.png

https://ithelp.ithome.com.tw/upload/images/20200907/20129969K8WmmYsjib.png

下載完成後透過其他程式傳輸檔案至測試環境。

https://ithelp.ithome.com.tw/upload/images/20200907/20129969yaIU9Glj9u.png

安裝前檢查

檢查系統是否有安裝mariadb的相關套件,若已安裝必需卸載,否則安裝MySQL時會有衝突。

yum list mariadb*

卸載mariadb

yum remove mariadb-libs.x86_64

解壓縮安裝包

tar -xvf mysql-8.0.21-1.el7.x86_64.rpm-bundle.tar

安裝MySQL

yum localinstall mysql-community-common-8.0.21-1.el7.x86_64.rpm mysql-community-libs-8.0.21-1.el7.x86_64.rpm mysql-community-client-8.0.21-1.el7.x86_64.rpm mysql-community-server-8.0.21-1.el7.x86_64.rpm

安裝完成後,啟動MySQL

Systemctl start mysqld

輸入以下指令可以看到目前MySQL服務的狀態

Systemctl status mysqld

登入MySQL
-u代表是使用哪一個帳戶登入
-p 為密碼的意思

mysql –uroot -p

慘了,那root密碼是多少呢。
不用怕,在安裝完成後,MySQL會產生一個root的預設密碼,密碼就藏在MySQL的LOG(錯誤日誌)中。
因為目前我們的配置都是採用預設,沒有做出任何更動,MySQL的Log的路徑一般會是在/var/log 裡面,只要輸入以下的指令就可以找到root預設密碼了哦。

cat /var/log/mysqld.log |grep password

接下來就先登入把密碼更改掉吧!
「 ; 」代表語句結束。

mysql > alter user 'root'@'localhost' identified by '新密碼';

重新登入測試看看新密碼

mysql > exit
 mysql –uroot –p

查看所有的資料庫

mysql > show databases;

以上列出的資料庫都是安裝完MySQL後會自動產生的系統資料庫。

  • Information_schema

用來儲存資料的資料,例如資料庫的名稱、表格名稱、或是欄位的資料型態等。

  • mysql

儲存使用者權限資訊。

  • performance_schema

用於提高MySQL效能,擁有自己的引擎能將伺服器效能影響減到最少,記憶體分配會在伺服器啟動時全部完成,不需要再重新分配,大大地提高性能。

  • sys

蒐集了view、functions、procedures幫助performance_schema複雜度將第,讓DBA更了解資料庫運行狀況。


參考網站:https://zh.wikipedia.org/wiki/MySQL
https://www.navicat.com/cht/company/aboutus/blog/1105-how-the-mysql-8-performance-schema-helps-diagnose-query-deadlocks.html


上一篇
《Day4》資料庫 【資料型態】
下一篇
[Day6]認識MySQL參數
系列文
一名合格的DBA要從底層一步步爬起30

尚未有邦友留言

立即登入留言