阿里云ECS上搭建MySql数据库

15 mysql 专栏收录该内容
37 篇文章 0 订阅

1,登陆到ECS服务实例上

ssh root@123.56.104.106

2,下载mysql的YUM源:

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

3,安装MySQL

yum install mysql-community-server

安装过程中一直输入"y"就可以了

4,启动mysql服务:systemctl start mysqld

5,设置密码

mysqladmin -u root password 'new-password'

或set password for 'root'@'localhost' = password('123456');

设置完密码之后就可以使用mysql -u root -p 命令来登录mysql数据库了

  • 修改的密码过于简单或不符合安全策略时会提示:

ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

原来MySQL5.6.6版本之后增加了密码强度验证插件validate_password,相关参数设置的较为严格。

使用了该插件会检查设置的密码是否符合当前设置的强度规则,若不满足则拒绝设置。影响的语句和函数有:create user,grant,set password,password(),old password。

密码强度检查等级默认是1,即MEDIUM,所以刚开始设置的密码必须符合长度,且必须含有数字,小写或大写字母,特殊字符。

6,登录进Mysql(我的刚安装完时没有密码):mysql -uroot或mysql

如果出现错误:ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

则说明mysql安装完后给root用户生成了一个默认密码,所以你需要使用密码登录。

查看mysql生成的默认密码:

为了加强安全性,MySQL5.7为root用户随机生成了一个密码,如果安装的是RPM包,则默认是在/var/log/mysqld.log中。

查看默认密码:grep 'temporary password' /var/log/mysqld.log

mysql -uroot -p 回车 然后输入默认密码即可登录myql。

7,使用Navicat链接Mysql时,如果报错10038

原因:远程访问 MySQL, 需开放默认端口号 3306.

firewall-cmd --permanent --zone=public --add-port=3306/tcp 提示:FirewallD is not running

1) 通过systemctl status firewalld查看firewalld状态,发现当前是dead状态,即防火墙未开启。

2) 通过systemctl start firewalld开启防火墙,没有任何提示即开启成功。

3) 如果要关闭防火墙设置,可能通过systemctl stop firewalld这条指令来关闭该功能

4) 再次执行执行firewall-cmd --permanent --zone=public --add-port=3306/tcp,提示success,表示设置成功

5)执行firewall-cmd --reload使最新的防火墙设置规则生效

启动与停止mysql服务命令:

systemctl start mysqld #启动mysqld

systemctl stop mysqld #停止mysqld

systemctl restart mysqld #重启mysqld

systemctl enable mysqld #设置开机启动

systemctl status mysqld #查看 MySQL Server 状态

如果用户权限和防火墙都开启了,还是报10038

此时还有一种可能,就是阿里云ECS安全组中配置的入站规则中没有添加3306端口

(如何配置请参考另一个文章中关于开放80端口的配置:https://blog.csdn.net/qq_2300688967/article/details/93859300

使用Navicat链接Mysql时,需要在阿里云上的安全组配置3306端口,使其它网络可以通过这个端口访问Mysql

 

Mysql常用操作命令:

* 显示所有的数据库
show databases;
* 创建数据库
create database dailyplanner;
* 使用指定的数据库
use dailyplanner;
* 显示数据库表
show tables;
* 显示mysql库user表的结构
desc user;
- 当前有哪些用户
select Host, User, password_expired from user;
- 创建用户,注意,以下是单引号,且要在linux命令行中输入的单引号
create user admin identified by 'Daily_Planner365';
- 给admin用户授予 select, insert, update, delete 权限
grant select, insert, update, delete on dailyplanner.* to 'admin'@'%';
- 也可以通过show grants命令查看权限授予执行的命令
show grants for admin
- 设置用户 root 可以在任意 IP 下被访问:
grant all privileges on . to admin@“%” identified by "Daily_Planner365";
- 授权所有数据库的所有权限
GRANT ALL PRIVILEGES ON *.*  to 'admin'@'%' identified by 'Daily_Planner365' with grant option;
- 使授权立刻生效 
flush privileges;
- 删除用户
Delete FROM user Where User='admin' and Host='%';

常见错误

1, ERROR 1396 (HY000): Operation CREATE USER failed for 'admin'@'%'

解决:drop user 'admin’;

 

如果不想自己搭建MySql, 可购买服务商的数据库产品(附 阿里云上购买mysql链接)

https://rds-buy.aliyun.com/rdsBuy?spm=5176.12902788.1365701.3.751f753bj1UmSJ#/create/rds?initData=%7B%22data%22:%7B%22rds_region%22:%22cn-shenzhen%22,%22rds_iz%22:%22cn-shenzhen-c%22,%22rds_dbtype%22:%22mysql%22,%22rds_dbversion%22:%225.7%22,%22rds_nodetype%22:%22Basic%22,%22rds_class%22:%22mysql.n1.micro.1%22,%22rds_storage%22:%2220%22,%22duration%22:6%7D%7D

 

  • 0
    点赞
  • 0
    评论
  • 5
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

相关推荐
©️2020 CSDN 皮肤主题: 技术黑板 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值