阿里云服务器mysql安装-远程连接

服务器中安装配置MYSQL数据库完整教程

第一步: 确保服务器系统处于最新状态(这步操作可有可无)
[root@localhost ~]# yum -y update

如果显示以下内容说明已经更新完成

Replaced:
grub2.x86_64 1:2.02-0.64.el7.centos grub2-tools.x86_64 1:2.02-0.64.el7.centos
Complete!
第二步: 重启服务器(这步操作也可以跳过)
[root@localhost ~]# reboot
第三步: 首先检查是否已经安装,如果已经安装先删除以前版本,以免安装不成功
[root@localhost ~]# rpm -qa | grep mysql
或
[root@localhost ~]# yum list installed | grep mysql

如果安装了的话,就使用下面这条命令删除原先的mysql,举例如下:

rpm -e  --nodeps        mysql-libs-5.1.73-5.e16_6.i686  
第四步: 下载MySql安装包
rpm -ivh http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm
或者
[root@localhost ~]# rpm -ivh http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
第五步: 安装MySql
[root@localhost ~]# yum install -y mysql-server
或
[root@localhost ~]# yum install mysql-community-server

如果显示以下内容说明安装成功

第六步: 设置开机启动mysql
 systemctl enable mysqld.service
第七步: 检查是否已经安装了开机自动启动
systemctl list-unit-files | grep mysqld

如果显示以下内容说明已经完成自动启动安装
mysqld.service enabled

第八步: 设置开启服务
systemctl start mysqld.service
第九步: 查看MySql默认密码
grep 'temporary password' /var/log/mysqld.log  //注意不同版本的位置可能会不一样哦,我的是 /var/log/mysql/mysqld.log
第十步: 登陆MySql,输入用户名和密码
mysql -uroot -p       //密码也就是第九步里面查看到的默认密码
第十一步: 修改当前用户密码 注意看下面的报错
mysql>SET PASSWORD = PASSWORD('alliance');  //但是这样会报错的,具体错误看下面
You have an error in your SQL syntax; check the manual that corresponds to your MySQL se rver version for the right syntax to use near 'PASSWORD('alliance')' at line 1

你应该用的mysql最新版本,百度了一下,SET PASSWORD = PASSWORD(‘newpasswd’);这种方式会出错!!!!

不要再看你写错了没,别再ctrl+v 回车啦~

alter user 'root'@'localhost' identified by '123'; 或set password for 'root'@'localhost'=password('123');

我的8.0.21的版本mysql 没问题可以用

-> flush privileges;

以防万一刷新一下服务,这句表示从mysql数据库的grant表中重新加载权限数据; 这儿开始就结束了下载创建账户设置密码

接下来我们看权限

第一步:切换到mysql数据库
use mysql
第二步:现有用户及连接权限
-> select User,authentication_string,Host from user
第三部:赋予权限

mysql是为了安全考虑所以初始的时候远程是不能访问的,只能本地localhost,127.0.0.1访问。(就相当于远程只能登录mysql这个工具,却不能以某种用户的身份访问里面的数据(我们平时做项目都是以root用户的身份访问指定数据库数据))

第一种方法:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root用户的密码' WITH GRANT OPTION;

我的mysql是8.0.21的会报以下错误

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'IDENTIFIED BY '123456' WITH GRANT OPTION' at line 1
第二种方法:

换一种赋予权限的方式,成功

mysql> use mysql;
mysql> update user set host='%' where user = 'root';
mysql> flush privileges;

除了代码修改user表中的user=root的host为%

另外mysql配置文件(/etc/mysql/mysql.cnf.d/mysqld.cnf)中bind-adress也需要修改为0.0.0.0或者注释掉该行

bind-address		=127.0.0.1
改成
bind-adress			=0.0.0.0
或者
#bind-address		=127.0.0.1

注意:

我的8.0版本找不到mysql.cnf文件,所以没有进行更改,后来也是可以连接成功的!

!!!如果是阿里云的服务器记得去云服务器ECS-安全组-添加安全组规则-入方向-添加3306 mysql的端口 重启一下
防火墙开启

1、开启端口3306

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

2、重启防火墙

firewall-cmd --reload

查看已经开放的端口:

firewall-cmd --list-ports

无论如何

运行
select user,host,plugin from user;
观察到你添加的user有如下属性才可以连接成功
host %
plugin mysql_native_password

如果你的plugin 为 caching_sha2_password 属性

修改加密规则
mysql> alter user 'wangwang'@'%' identified by '1qaz!QAZ' password expire never; 
更新用户密码
mysql> alter user 'wangwang'@'%' identified with mysql_native_password by '1qaz!QAZ';
刷新一下
mysql> flush privileges;
第四步:重启mysql启动,让修改生效
service mysqld restart
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值