一、前言
??其實之前已經寫過一篇筆記【MySQL 8.0.34(x64)安裝筆記】。機緣巧合,這次遇到的環境是Ubuntu 18.04 LTS,相比Windows平臺的安裝,對mysql的版本以及依賴的選擇,稍微要窄一些。特作筆記。
二、準備
(1)材料選擇
項 | ??版本選擇 |
---|---|
MySQL | 8.0.33是支持Ubnuntu 18.04最后的版本(發布時間:2023-03-17) |
libaio | MySQL依賴:異步I/O庫,libaio1_0.3.112-5_amd64(發布時間:2019-08-16) |
libmecab2 | MySQL依賴:分詞處理庫,libmecab2_0.996-5_amd64(發布時間:2018-2-7) |
??對于依賴 libaio 和 libmecab2 的版本選擇有多個版本,作者本著發布時間盡量不要相差太多的原則,盡量選擇較新版本。
??具體版本列表見附錄(1)~(3)。
(2)材料清單
項 | ??文件 | ??備注 |
---|---|---|
libaio | libaio1_0.3.112-5_amd64.deb | 直接安裝 |
libmecab2 | libmecab2_0.996-5_amd64.deb | 直接安裝 |
MySQL | mysql-server_8.0.33-1ubuntu18.04_amd64.deb-bundle.tar | 需先解壓再安裝 |
??插一句,.deb 是 Ubuntu 所支持的安裝文件,mysql 的 tar 文件解壓后其中也全部是 .deb 文件。
??瘦身后的安裝包,已上傳CSDN,可直接下載。
三、過程
(1)解壓mysql安裝包.tar
tar -xvf mysql-server_8.0.33-1ubuntu18.04_amd64.deb-bundle.tar
(2)創建安裝腳本
#!/bin/bash
dpkg -i libaio1_0.3.112-5_amd64.deb
dpkg -i libmecab2_0.996-5_amd64.deb
#
dpkg -i mysql-common_8.0.33-1ubuntu18.04_amd64.deb
dpkg -i mysql-community-client-plugins_8.0.33-1ubuntu18.04_amd64.deb
dpkg -i libmysqlclient21_8.0.33-1ubuntu18.04_amd64.deb
dpkg -i libmysqlclient-dev_8.0.33-1ubuntu18.04_amd64.deb
dpkg -i mysql-community-client-core_8.0.33-1ubuntu18.04_amd64.deb
dpkg -i mysql-community-client_8.0.33-1ubuntu18.04_amd64.deb
dpkg -i mysql-client_8.0.33-1ubuntu18.04_amd64.deb
dpkg -i mysql-community-server-core_8.0.33-1ubuntu18.04_amd64.deb
dpkg -i mysql-community-server_8.0.33-1ubuntu18.04_amd64.deb
dpkg -i mysql-server_8.0.33-1ubuntu18.04_amd64.deb
??注意:安裝組件存在依賴,請務必保證安裝順序(瘦身安裝包中已附帶安裝腳本install.sh)。
(3)執行安裝腳本
??如果沒有意外,mysql會自動安裝。其間會彈出設置root的密碼以及選擇賬戶驗證方式,見附錄(4)和(5)。
(4)啟動 mysql 服務
systemctl start mysql
(5)驗證服務是否啟動
ps aux | grep mysql
??或使用客戶端工具登錄
mysql -u root -p
??自此,安裝完成。至于安裝目錄,見附錄(6)。
四、后續及設置
(1)創建數據庫
mysql -u root -p
show databases;
CREATE DATABASE `testdb` CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_general_ci';
(2)修改服務系統變量
??① 查看并設置變量 sql_mode
use mysql;
show VARIABLES LIKE '%sql_mode';
??剔除 sql_mode 中的 ONLY_FULL_GROUP_BY:
vim /etc/mysql/mysql.conf.d/mysqld.cnf
??在文件尾部添加:
sql-mode = STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE。。
??注意:變量名為 sql_mode,但在配置文件中的配置項是 sql-mode。
??具體參見文檔:http://dev.mysql.com/doc/mysql/en/server-system-variables.html。
??注意:修改配置后,需重啟 mysql 服務后再查看變量是否更新。
systemctl restart mysql
(3)允許遠程主機連接
use mysql; # 選擇系統庫mysql
SELECT host FROM user WHERE user = 'root'; # 查看允許主機
UPDATE user SET host = '%' WHERE user = 'root';
flush privileges; # 提交權限
SELECT host FROM user WHERE user='root'; # 驗證查看
exit # 退出命令行工具
附錄
(1)選擇MySQL版本
??下載位置:https://downloads.mysql.com/archives/community/。
(2)選擇依賴libaio庫
??位置:https://mirrors.tuna.tsinghua.edu.cn/ubuntu/pool/main/liba/libaio/。
??備選位置:https://archive.ubuntu.com/ubuntu/pool/main/liba/libaio/。
(3)選擇依賴libmecab2庫
??位置:https://mirrors.tuna.tsinghua.edu.cn/ubuntu/pool/universe/m/mecab/。
??備選位置:https://archive.ubuntu.com/ubuntu/pool/universe/m/mecab/。
(4)設置root密碼的對話框
(5)設置密碼驗證策略
(6)MySQL安裝目錄
??目錄 | ??內容 |
---|---|
/etc/mysql/ | 配置文件 |
/usr/bin/ | mysql客戶端工具,如:mysql,mysqlcheck,mysqladmin。。 |
/usr/sbin/ | mysqld,mysql服務守護進程 |
/usr/lib/mysql/ | 插件和庫文件 |
/var/lib/mysql/ | 數據內容 |
/var/log/mysql/ | 日志文件 |
相關文章
??[1]. MySQL 8.0.34(x64)安裝筆記。
??[2]. JDK(Ubuntu 18.04.6 LTS)安裝筆記。
??[3]. Tomcat Web應用(Ubuntu 18.04.6 LTS)部署筆記。。
??[4]. Ant(Ubuntu 18.04.6 LTS)安裝筆記。
【完】