debian 10 单独安装 mysql
之前在一步到位的 vps 从入门到放弃 | Bao’s 备忘录谈过可以用 lnmp / 宝塔去装 mysql。 不过很多时候我并不需要 php,我自己的 vps 主用 caddy 而不是 nginx,只有 mysql 是刚需,加上我个人秉承着 「apt + dpkg 走天下」的暴论,就想着有没有官方的使用 apt 的单独安装 mysql 的方法(
只谈安装,剩下的配置流程,以前谈过了,参考本文开头那篇文章。
使用 mysql-apt-config 安装
和 ubuntu 那边的 ppa 是类似的东西(
参考文章:How To Install the Latest MySQL on Debian 10 | DigitalOcean
到 MySQL :: Download MySQL APT Repository 获取最新的 mysql-apt-config 安装包。拿到地址后直接到系统里面 wget,现在的版本是 0.8.16-1,so:
1
wget https://repo.mysql.com//mysql-apt-config_0.8.16-1_all.deb
安装
1
sudo dpkg -i mysql-apt-config*
更新一下 apt 库
1
apt update
安装
1
apt install mysql-server
安装过程中,会弹出两个窗口,一个是选择 mysql 需要安装的组件,一个是选择 mysql 的版本,目前可选 5.7 和 8.0;一个是输入 root 密码提权。
使用官网离线安装包
用上面的方法只能装两个版本,还要装更旧的就得去官网找包了。
下载
到MySQL :: Download MySQL Community Server (Archived Versions)页面,选择相应版本和平台。
可以下载第一个 deb bundle,用于完全离线安装;也可以下载 mysql-community-server(上图第二个包)
下载 mysql-community-server 并修复安装(二选一)
若是下载 mysql-community-server 的话,同样是获取到下载连接然后用 wget 下载再用 dpkg 安装,不在赘述;安装中一定会报错:
不过可以用命令来修复:
1 | apt --fix-broken install |
不报错,并提示输入 root 密码的话,基本就安装成功了。
下载 deb bundle ,完全离线安装(二选一)
参考:MySQL :: MySQL Installation Guide :: 7.6 Installing MySQL on Linux Using Debian Packages from Oracle
下载 deb bundle 包后解压
1 | mkdir mysql |
安装 libaio
1 | apt install libaio1 -y |
配置,提权
1 | dpkg-preconfigure mysql-community-server_*.deb |
安装
1 | dpkg -i mysql-{common,community-client,client,community-server,server}_*.deb |
不过说是完全离线,大概率还是要修复依赖。。。
1 | apt -f install -y |
补充
卸载
没法用 apt remove
命令直接下载,错误的卸载方法还可能导致未来无法正常安装。
1 | apt-get remove --purge mysql-server mysql-client mysql-common -y |
中间弹出 Remove data directories ?
,选 yes。
提示 install: invalid user ‘mysql’
多半就是错误的卸载导致的。
运行
1 | adduser mysql |
设置一个密码即可。
版本选择
我闲的无聊折腾 mysql 安装就是因为我先装了 8.0 版本在 1g 的 azure 机子上,发现一重启探针就报警吃了 88% 内存,一排查发现是 mysql 的问题。
实测 8.0 版本吃的内存比 5.7 多一倍。。。换为 5.7,内存占用降为 63%。