环境:阿里云ECS服务器,系统为CentOS 7.7 64位
用户:root
删除原来的数据库:
centos7中默认安装了数据库MariaDB,如果直接安装MySQL的话,会直接覆盖掉这个数据库,当然也可以手动删除一下:
[root@localhost ~]# rpm -qa|grep mariadb // 查询出来已安装的mariadb
[root@localhost ~]# rpm -e --nodeps 文件名 // 卸载mariadb,文件名为上述命令查询出来的文件
下载与安装MySQL:
这里采用Yum管理好了各种rpm包的依赖,能够从指定的服务器自动下载RPM包并且安装,所以在安装完成后必须要卸掉,否则会自动更新。
1.安装MySQL官方的yum repository
[root@localhost ~]# wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
2.下载rpm包
[root@localhost ~]# yum -y install mysql57-community-release-el7-10.noarch.rpm
3.安装MySQL服务
[root@localhost ~]# yum -y install mysql-community-server
最后会出现个complete!
4.启动MySQL服务
[root@localhost ~]# systemctl start mysqld.service
然后会看到类似下面的界面,或者以Starting MySqL server… started MysqlServer…结尾的就成功启动了(不知道为什么我的没有任何提示)
还可以配置MySQL的开机启动:
[root@woitumi-128 ~]# systemctl enable mysqld
[root@woitumi-128 ~]# systemctl daemon-reload 刚刚配置的服务需要让systemctl能识别,就必须刷新配置
关于登录MySQL:
第一次启动MySQL后,就会有临时密码,这个默认的初始密码在/var/log/mysqld.log文件中,我们可以用这个命令来查看:
grep "password" /var/log/mysqld.log
登录命令:
[root@localhost ~]# mysql -u root -p
这个就是用root用户登录,然后输入我们刚刚取出来的临时密码(2jrKBjH-MyN&)。
然后你就登录成功啦
当你要使用数据库的时候,它会提醒你需要修改密码
下面我们来修改密码
alter user 'root'@'localhost' identified by '输入你的密码';
如果你的密码等级太简单,你是修改不了密码的,如果你坚持要这样的密码,你需要修改一下密码等级,再进行修改密码。
mysql> set global validate_password_policy=0; //改变密码等级
mysql> set global validate_password_length=1; //改变密码最小长度
然后你可以用 show databases;进行检查有没有报错,没错的话会出现下方代码。
配置远程登录:
MySQL默认root用户只能本地登录,如果要远程连接,要简单设置下,这里直接用root来远程登录不添加其他角色。
使用命令:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '你的密码' WITH GRANT OPTION;
.*.的意思是所有库的所有表;To后面跟的是用户名;@后面跟的是ip地址,%代表所有ip地址,identified by后面的是密码。
然后再:
mysql> flush privileges;
添加3306端口:
我们先退出mysql
mysql> quit;
然后再输入开放3306端口的命令
firewall-cmd --zone=public --add-port=3306/tcp --permanent;
结果说没有运行防火墙:
那就先开防火墙咯:
systemctl status firewalld 查看防火墙状态
systemctl start firewalld 打开防火墙
然后再输入那个开放3306端口的命令就行了
firewall-cmd --zone=public --add-port=3306/tcp --permanent;
firewall-cmd --reload 重启防火墙
最后还需要在阿里云的服务器中的安全组加入mysql连接的规则。这个很重要不然远程无法连接上。
打开安全组配置:
常用的tomcat,mysql我们都知道:
这样差不多就配置好了
你可以用navicat进行一下测试远程连接情况