# **MariaDB 入門** ## **1. MariaDB 概述** :::info MariaDB 是 MySQL 關聯式資料庫管理系統的一個復刻,由社群開發,有商業支援,旨在繼續保持在GNU GPL下開源。 ![](https://i.imgur.com/1U8F1Me.png) MariaDB 架構 ![](https://i.imgur.com/v9ZRnd5.png) ::: ## **2. MariaDB 安裝及基本設定** (1) 安裝 MariaDB package ```bash= sudo dnf install mariadb-server ``` (2) 啟動服務及管理 ```bash= systemctl start mariadb systemctl enable mariadb systemctl status mariadb ``` ## **3. MariaDB multi-instance 設定** (1) Clinet/Server 連線 :::info ![](https://i.imgur.com/ApdNnTH.png) 連線範例 ```bash= mysql -h192.1.1.20 -P3306 –u ewill –pPassw0rd ``` ![](https://i.imgur.com/5QFS4Kv.png) ::: (2) my.cnf 設定 ``` [client] port=3306 socket=/data/mysql/mysql_3306/mysql.sock [mysqld] port=3306 datadir=/data/mysql/mysql_3306 socket=/data/mysql/mysql_3306/mysql.sock log-error=/var/log/mariadb/mariadb3306.log pid-file=/run/mariadb/mariadb3306.pid ``` 註 : 執行mysql相關指令時, 若 socket file 與設定檔無法匹配, 建議先試著使用下列指令 export MYSQL_UNIX_PORT=/data/mysql/mysql_3306/mysql.sock (3) MariaDB daemon 啟動 ![](https://i.imgur.com/1jShrnm.png) > 數據庫初使化 ```bash= mysql_install_db --user mysql --defaults-file=/etc/my3306.cnf ``` > 修改 systemd file > 啟動 instance ```bash= systemctl start my3306.service ``` > 設定 instance 數據庫 ```bash= ~]# mysql_secure_installation --defaults-file=/etc/my3306.cnf ``` > 連線至數據庫 ```bash= mysql --defaults-file=/etc/my3306.cnf -u root -p ``` ###### tags: `Database` `MariaDB`