centos阿里云服务器mysql数据库安装和远程登录

总结一下吧

    其中失败之后

    卸载参考https://blog.csdn.net/dabao87/article/details/80571098里面的安装有点意思,虽然不是很懂

    但我试过一次但后面我一些问题又重装

    参考https://www.cnblogs.com/wangshen31/p/9556804.html写的很详细,不够我遇到一些其他问题所以稍微有点不同

 首先要在阿里云上开启3306的安全策略

https://img-blog.csdnimg.cn/20190530111702431.png

然后安装mysql

1.安装MySQL官方的yum repository

wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm

2.下载rpm包

yum -y install mysql57-community-release-el7-10.noarch.rpm

3.安装MySQL服务

yum -y install mysql-community-server

4.启动MySQL服务

systemctl start  mysqld.service

查看状态:systemctl status mysqld.service

看到绿色的active(running)就成功了

我直接停止服务:

systemctl stop mysqld.service

修改mMySQL的配置文件:

vi /etc/my.cnf 

最后加上

skip-grant-tables

启动服务

systemctl start mysqld.service

跳过密码登录

mysql -u root

修改密码

use mysql;

update mysql.user set authentication_string=password('密码') where user='root';

提示:密码默认有要求的,一般是

https://img-blog.csdnimg.cn/20190530113126961.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2FfaGlnaGVy,size_16,color_FFFFFF,t_70

可以修改用 set global validate_password_policy=LOW 后,就只验证密码长度

打住,可以先不改,按要求设置密码,问题一个一个来

设置好密码,就可退出exit,vi /etc/my.cnf 删掉加上的配置,也可以删掉后加上

character_set_server=utf8

init_connect='SET NAMES utf8'

用于设置编码

之后用密码登录mysql

SET PASSWORD = PASSWORD('密码');

设置一下,不然重启服务后会报错

刷新一下

flush privileges

退出重启服务器

systemctl restart mysqld.service

在登录配置远程登录

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '密码' WITH GRANT OPTION;

ALL PRIVILEGES 表示用户全部权限

to 后面是你要远程登录的用户名,目前只有root,后面可以自己添加

%是全部ip地址,也可以指定

by 后面是密码

数据名称.表名称,如果用*.*表示,说明赋予用户服务器上所有数据库所有表的权限。

flush privileges一下

后面还是连不上的话,可以

show databases

use mysql

select Host,User from user

https://img-blog.csdnimg.cn/20190530114947797.png

如果是这样的话

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

再flush privileges

怎么打开数据库端口

查看端口是否打开

netstat -an|grep 3306

没打开可以网上搜一搜怎么打开

之后就打开防火墙

centos7默认有firewall(安装firewalld 防火墙yum install firewalld)

firewall-cmd --zone=public --add-port=3306/tcp --permanent;

firewall-cmd --reload

检查设定是否生效

iptables -L -n|grep 3306

 

失败经历:

当时我好像用不了就

systemctl stop firewalld

systemctl mask firewalld

安装了yum install iptables-services

开放某个端口 在/etc/sysconfig/iptables里添加

-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT

后面我也一脸懵逼不行

之后又乖乖恢复

systemctl unmask firewalld

开启服务systemctl start firewalld.service

开机自动启动systemctl enable firewalld.service

firewall-cmd --zone=public --add-port=3306/tcp --permanent;

firewall-cmd --reload

 

          作为一个小白,我实际操作差点淹死在bug中,如果有错请见谅,有大佬指出会改正,其实我现在感觉迷迷糊糊就成功或失败,所以写个文章总结一下,如有转载请标明。

 

猜你喜欢

转载自blog.csdn.net/a_higher/article/details/90695039