Ubuntu安装MySQL的三种方式以及卸载MySQL |
注意:我所有操作一开始就执行了:sudo su (进入特权模式,后续命令就不需要在用sudo提权了) 一.卸载MySQL看个人习惯,我基本用的是第一种,简单粗暴 删除mysql的数据文件 sudo rm /var/lib/MySQL/ -R 删除mysql的配置文件 sudo rm /etc/mysql/ -R 自动卸载mysql(包括server和client) sudo apt-get autoremove mysql* --purge sudo apt-get remove apparmor 检查是否卸载干净 dpkg -l | grep mysql# 若没有返回,说明已完成卸载 dpkg --list|grep mysql #首先在终端中查看MySQL的依赖项 sudo apt-get remove mysql-common #卸载 sudo apt-get autoremove --purge mysql-server-8.0 #卸载,看你自己安装的什么版本在卸载 dpkg -l|grep ^rc|awk '{print$2}'|sudo xargs dpkg -P #清除残留数据 dpkg --list|grep mysql #再次查看MySQL的剩余依赖项,基本到这就干净了 sudo apt-get autoremove --purge mysql-apt-config #如果有的话继续删除剩余依赖项 dpkg -l 命令会列出系统中所有已安装的软件包信息 。结合grep,可以过滤出自己想要的内容 。 输出第一列一般为两个字母,分别代表(期望状态和当前状态)最常见的就是上图中的 期望状态标识:
当前状态标识:
错误标识:
一般我们系统中最常见的就是ii(期望安装,并且已正常安装) 。 还有一种比较常见的是rc(期望卸载,目前仅仅保留了一些配置信息) 。 系统中所有的安装的包的内容都被记录在: 二.直接安装sudo apt update && sudo apt upgrade sudo su #进入特权模式,使用的是root权限,这样后续执行命令就不需要sudo apt install -y mysql-server #安装的是最新版本,比如MySQL8.0的 mysql -V #查看版本 mysql -uroot #这种安装方式前期没有设置密码,直接登录 1.密码查询及更改2 若安装过程未设置密码或者设置了密码然后使用过程中忘记密码了,可以通过以下方式查询、修改密码 cat /etc/mysql/debian.cnf 在没有改密码之前用mysql -uroot 和这个获取用户密码登录都可以 2.修改密码 ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码'; 三.安装指定版本选择tar压缩包,选择bundle版本(带部分依赖,比较全) 警告:注意安装顺序 1.安装mysql-community-client相关dpkg -i mysql-common_8.0.20-2ubuntu20.04_amd64.deb dpkg -i mysql-community-client-core_8.0.20-2ubuntu20.04_amd64.deb dpkg -i mysql-community-client_8.0.20-2ubuntu20.04_amd64.deb 2.安装mysql-community-server-coredpkg -i mysql-community-server-core_8.0.20-2ubuntu20.04_amd64.deb #这里应该会报错,缺少依赖,缺啥补啥 apt install -y libmecab2 #安装依赖,这里是我缺的依赖 dpkg -i mysql-community-server-core_8.0.20-2ubuntu20.04_amd64.deb dpkg -i mysql-client_8.0.20-2ubuntu20.04_amd64.deb dpkg -i mysql-community-server_8.0.20-2ubuntu20.04_amd64.deb 安装这二个的时候就会弹出设置密码,自己定义就好 mysql -V mysql -uroot -p123 到这里基本就没有问题了 四.编译安装这里有两个版本的代码,一个带有boost的,一个没有,我们选择下面那个带boost的,可以省很多事,不然还要自己下载boost安装 1.装包解压 wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-boost-5.7.18.tar.gz tar -zxvf mysql-5.7.18.tar.gz 2.安装依赖包 apt install -y cmake bison libncurses5-dev build-essential 3.编译安装 cd mysql-5.7.18/ cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DWITH_BOOST=boost make && make install 4.添加用户组,和文件管理 groupadd mysql useradd -g mysql mysql mkdir /usr/local/mysql/data chown -R mysql /usr/local/mysql chgrp -R mysql /usr/local/mysql 五、初始化mysql指定数据目录data位置 datadir /usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data 这个会生成一个很随机的密码,要备份一下:我的是:(udyv%Tmv0#e 六、编辑简单配置文件vim /etc/my.cnf //添加下面的内容 [client] socket = /tmp/mysql.sock [mysqld] port=3306 socket = /tmp/mysql.sock basedir = /usr/local/mysql datadir = /usr/local/mysql/data 如果怕3306端口已经被占用,也可以写3307啥的 七.启动MySQL一般启动或暂停模式:support-files/mysql.server start (stop) 下面把启动放到service下,可以快捷启动 cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld chmod +x /etc/init.d/mysqld update-rc.d mysqld defaults service mysqld start service mysqld status #确定已经启动 八.登录MySQLln -s /usr/local/mysql/bin/mysql /usr/bin/mysql mysql -uroot -p'(udyv%Tmv0#e' //重新修改密码 为123456 mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '123456'; exit 退出 修改一下my.cnf ,添加用户和密码 vim /etc/my.cnf 重新用新密码登陆 九、设置远程连接#所有主机都可以连接 mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION; mysql>flush privileges; exit 总结以上为个人经验,希望能给大家一个参考,也希望大家多多支持 。 |