一、卸载本地MySQL
安装mysql之前,先卸载本地已有数据库,以5.7为例(本地未安装可从第二部分开始)
1.查看本地mysql依赖项情况
dpkg --list | grep mysql
输完后回车,会有如下类似的代码:
2.卸载mysql-common
sudo apt remove mysql-common
3.卸载并清除mysql5.7
sudo apt autoremove --purge mysql-server-5.7
4.清除残留数据
dpkg -l | grep ^rc| awk '{print$2}'| sudo xargs dpkg -P
5.再次检查依赖项情况
dpkg --list | grep mysql
如果输出的结果为空,说明已经卸载干净了,可进行第二步安装,如果不为空继续进行删除卸载
6.再次执行删除
sudo apt autoremove --purge mysql-apt-config
二、安装MySQL5.7
网上大部分的参考文献都是N年前的,大家各种抄袭,实际安装的都是MySQL8.0版本,MySQL8.0在服务器上处理表名大小写敏感问题非常麻烦,对新手非常不友好,这里安装MySQL5.7版本
1.编辑镜像源文件
sudo vim /etc/apt/sources.list
2.在尾部添加清华大学镜像源
# 清华镜像源
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-updates main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-backports main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-security main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-security main restricted universe multiverse
3.更新镜像源
sudo apt-get update
sudo apt-get upgrade
4.安装mysql5.7
sudo apt-get install mysql-server-5.7
三、开启远程连接与忽略表名大小写
1.更新root用户的host
使用 mysql -u root -p 命令登录mysql,有密码输密码无密码直接回车
进入mysql后,使用mysql数据库
use mysql;
再进行对root用户的host进行更新
update user set host = '%' where user = 'root';
2.对用户进行赋权
grant all privileges on *.* to 'root'@'%' with grant option;
赋权后记得刷新权限
flush privileges;
3.编辑配置文件
查了很多资料,有的是修改/etc/my.cnf,有的是修改/etc/mysql/mysql.conf.d/mysqld.cnf文件,我的环境是修改的/etc/mysql/mysql.conf.d/mysqld.cnf文件,具体根据自身环境来
vi /etc/mysql/mysql.conf.d/mysqld.cnf
注释掉bind_address = 127.0.0.1,如果需要开始忽略大小写,可增加lower_case_table_names = 1,即可实现忽略大小写
所有的准备工作完成后记得重启下mysql
sudo service mysql restart
如有其他问题,欢迎在评论区留言互动!