安装MySQL与远程登录

首先

1
2
sudo apt update
sudo apt install mysql-server

初始化配置信息

1
sudo mysql_secure_installation
  • VALIDATE PASSWORD COMPONENT…(使用密码强度校验组件) 输入: n
  • New Password:(设置新密码,并重复一遍)
  • Remove anonymous users (删除匿名用户) n
  • Disallow root login remotely(拒绝远程root账号登录) n
  • Remove test database and access to it(移除test数据库) n
  • Reload privilege tables now (现在就重新载入权限表) y

登录

1
sudo mysql -urppt -p

修改认证方式

将身份验证方法从auth_socket更改为mysql_native_password

1
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的密码';

允许远程访问

先打开3306端口

1
update user set Host='%' where User='root';

踩坑:

  1. 在8.0以前,我们习惯使用以下命令授权远程连接操作:
1
grant all privileges on *.* to 'root'@'%';
  1. 但在8.0以后,使用以上命令会报错:
1
ERROR 1410 (42000): You are not allowed to create a user with GRANT
分析原因:

因为在8.0以后,这个特性已被移除,官方文档如下:

原文:Using GRANT to modify account properties other than privilege assignments. This includes
authentication, SSL, and resource-limit properties. Instead, establish such properties at account-creation
time with CREATE USER or modify them afterward with ALTER USER.
译文:使用grant修改账户权限分配以外的账户属性。包括认证,SSL,和资源限制配置等。取而代之的是创建用户create user或者创建后修改alter user的方式。

刷新cache中配置

1
flush privileges;

修改配置

1
sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf

找到bind-address属性,后面的ip地址改成0.0.0.0保存并退出,然后重启mysql服务(也可以注释掉bind-address)

重启mysql

1
systemctl restart mysql

MySQL8 卸载

  1. 查看MySQL依赖 : dpkg --list|grep mysql
  2. 卸载: sudo apt-get remove mysql-common
  3. 卸载: sudo apt-get autoremove --purge mysql-server-8.0(这里版本对应即可)
  4. 清除残留数据: dpkg -l|grep ^rc|awk '{print$2}'|sudo xargs dpkg -P
  5. 再次查看MySQL的剩余依赖项: dpkg --list|grep mysql(这里一般就没有输出了,如果有执行下一步)
  6. 继续删除剩余依赖项,如:sudo apt-get autoremove --purge mysql-apt-config

安装jdk

解压jdk

1
tar -zxvf jdk-8u121-linux-x64.tar.gz(文件名)

编辑环境变量

1
sudo vim /etc/profile

末尾添加

1
2
3
4
5
#JDK
export JAVA_HOME=/usr/local/bin/jdk1.8.0_271(真实路径)
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:{JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH

然后

1
source /etc/profile