文档章节

云服务器(腾讯云)从零开始部署记录(3)之mysql5.7安装

月生无界
 月生无界
发布于 03/18 10:59
字数 1494
阅读 109
收藏 0

1、安装yum repo

centos的yum源中没有mysql(可尝试直接使用安装命令:yum install mysql-server尝试),需要到mysql的官网下载yum repo配置文件,然后安装:

#下载
wget https://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm
#repo安装
rpm -ivh mysql57-community-release-el7-9.noarch.rpm

2、安装mysql

yum install mysql-server  #安装命令
systemctl start mysqld    #启动MySQL

3、操作命令集

#首次安装mysql并启动备注即操作
systemctl start mysqld #启动MySQL,执行命令后没有任何返回,可以通过状态命令查看是否启动成功
systemctl stop mysqld #关闭MySQL
systemctl restart mysqld #重启MySQL

#查看MySQL运行状态,显示Active: active (running)表示成功了
systemctl status mysqld
#操作示例
[root@VM_0_6_centos ~]# systemctl status mysqld
● mysqld.service - MySQL Server
   Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
   Active: active (running) since Mon 2019-03-18 11:25:45 CST; 56s ago

systemctl enable mysqld #设置开机启动
systemctl disable mysqld #关闭开机启动

#首次安装需要获取临时密码,使用命令如下,返回的最后冒号后面的即是临时密码,我这里是: aMKsBq#s-2(Y
grep 'temporary password' /var/log/mysqld.log
#操作示例
[root@VM_0_6_centos ~]# grep 'temporary password' /var/log/mysqld.log
2019-03-18T03:25:37.681423Z 1 [Note] A temporary password is generated for root@localhost: aMKsBq#s-2(Y

#倘若没有,则先删除原来的mysql残留的数据,注:首次安装不需要此操作
rm -rf /var/lib/mysql
#删除后重启
systemctl restart mysqld #重启MySQL

#命令登录mysql,输入后,提示输入密码,密码隐藏不显示,直接复制进去即可,回车,即可登录成功
mysql -u root -p   #表示root账号登录
#操作示例:
[root@VM_0_6_centos ~]# mysql -u root -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.7.25
Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> 
#登录后就是操作mysql数据库了
#修改默认密码,密码规则:

修改默认密码(包括配置可设置简单密码)

#安装不修改默认密码,会报以下错误
mysql> select @@log_error;
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
#密码规则,首次修改返回错误示例
mysql> set password=password("yourpassword");
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
#提示错误,密码安全度不够高,mysql5.7之后的密码必须符合长度,且必须含有数字,小写或大写字母,特殊字符
#该提示与两个validate_password_policy和validate_password_length的值有关系

#validate_password_policy可设置值为0,1,2,默认是1,如果设置为0,则密码只校验长度,如下:
mysql> set global validate_password_policy=0;
Query OK, 0 rows affected (0.00 sec)

#设置后直接修改密码,不需要考虑字母和特殊字符,因为只是修改了校验规则,但是还是有长度校验的,
#长度校验默认是8,最小是4,可以自己设置
mysql> set password=password("12345678");
Query OK, 0 rows affected, 1 warning (0.00 sec)

#修改密码校验长度
#先查看当前密码校验长度,如下,可见是8
mysql> select @@validate_password_length;
+----------------------------+
| @@validate_password_length |
+----------------------------+
|                          8 |
+----------------------------+
1 row in set (0.00 sec)
#设置校验长度为4
mysql> set global validate_password_length=1;
Query OK, 0 rows affected (0.00 sec)
#再次查看密码校验长度,已经变为4
mysql> select @@validate_password_length;
+----------------------------+
| @@validate_password_length |
+----------------------------+
|                          4 |
+----------------------------+
1 row in set (0.00 sec)

设置可远程连接

#MySQL默认是没有开启远程控制的,必须添加远程访问的用户,命令如下,12345678为数据库密码:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '12345678' WITH GRANT OPTION;
#该命令将授权所有地址都可以通过root用户远程访问数据库,如果需要限定ip,可以将%换为ip,
#或者到腾讯云安全组的端口加上ip限制

#操作示例
#登录后,首先切换数据库,使用use mysql(mysql为数据库名)
mysql> use mysql;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
#执行授权命令
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '12345678' WITH GRANT OPTION;
Query OK, 0 rows affected, 1 warning (0.00 sec)

#一定要执行此语句,刷新权限
mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)

#查看授权结果,已经加了一条记录,一般root用户只有localhost权限(最后一条)
mysql> select User,Host from user;
+---------------+-----------+
| User          | Host      |
+---------------+-----------+
| root          | %         |
| mysql.session | localhost |
| mysql.sys     | localhost |
| root          | localhost |
+---------------+-----------+
4 rows in set (0.00 sec)

至此,mysql5.7安装完成,可通过可视化工具连接,本人使用navicat

4、安装过程问题

由于SSH工具,长时间不操作会自动断掉,yum安装mysql到一半的时候,需要选择Is this ok [y/N]: y的时候,去做了其他事情,重新打开工具连接,再使用yum install mysql-server安装的时候提示以下内容:

[root@VM_0_6_centos ~]# yum install mysql-server
Loaded plugins: fastestmirror, langpacks
Existing lock /var/run/yum.pid: another copy is running as pid 22795.
Another app is currently holding the yum lock; waiting for it to exit...
  The other application is: yum
    Memory :  87 M RSS (482 MB VSZ)
    Started: Mon Mar 18 10:53:34 2019 - 25:01 ago
    State  : Sleeping, pid: 22795

显示yum被锁了,解决方式,看到第一行的pid,直接kill掉,继续正常安装mysql5.7

[root@VM_0_6_centos ~]# kill -9 22795

5、navicat连接报错1045错误

#执行授权后,没有刷新权限,导致一直连接不上
mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)

6、其他:我操作的服务器没有开启防火墙,所有端口开启关闭、ip过滤都使用安全组策略配置解决,可能因为开启防火墙导致数据库端口没有开放,如果navicat连接不上,可以查看防火墙是否开启该端口

© 著作权归作者所有

月生无界
粉丝 9
博文 31
码字总数 40210
作品 0
广州
后端工程师
私信 提问
linux服务器项目部署【完整版】

之前总玩v8虚拟机,最近看到腾讯云学生套餐很实惠就租了个linux服务器搭一个项目,做下这个项目部署全记录,即为了方便以后查看,同时也分享下自己的经验,不足之处还请多多指教,废话不多说...

第六空间
2018/08/22
0
0
centos7下使用yum源安装mysql5.7记录

1.现在centos上默认是没有yum源的,yum安装的是 MariaDB。所以我们需要自己先配置yum源。配置yum源步骤如下:(参考自风Boy) 下载yum源: image.png 安装yum源 image.png 查看有哪些版本的m...

框架淘金者
09/17
22
0
静态网站在腾讯云上的托管

版权声明:本文由腾讯云原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/191 来源:腾云阁 https://www.qcloud.com/community 接下来,将以一个WordPre...

偶素浅小浅
2016/11/10
77
0
一文了解腾讯云数据库SaaS服务

本文由云+社区发表 作者:邵宗文,2009年加入腾讯,现为腾讯云数据库专家产品经理。之前曾负责为OMG事业群构建数据库平台,部署,规划及运维支持,为腾讯网,新闻客户端,快报,视频,财经,体...

腾讯云加社区
01/25
30
0
腾讯云从零部署nodejs站点

版权声明:本文由袁飞翔原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/176 来源:腾云阁 https://www.qcloud.com/community 最近入手了一台腾讯云机子...

偶素浅小浅
2016/11/09
71
0

没有更多内容

加载失败,请刷新页面

加载更多

好程序员大数据教程分享Scala系列之模式匹配和样例类

好程序员大数据教程分享Scala系列之模式匹配和样例类 1.样例类 在Scala中样例类是一中特殊的类,样例类是不可变的, 可以通过值进行比较,可用于模式匹配。 定义一个样例类: 构造器中每一个...

好程序员官网
4分钟前
1
0
让nginx上的静态网页在访问的时候没有html后缀

需求背景: 公司产品小姐姐觉得这个访问带html后缀不专业,要求访问不带html后缀 nginx 配置 #原配置 location / { index index.html index.htm index.php; try_files $...

Linux_Anna
5分钟前
1
0
beetl的内置函数

函数调用Beetl内置函数请参考附录,以下列出了常用的函数date 返回一个java.util.Date类型的变量,如 date() 返回一个当前时间(对应java的java.util.Date); ${date( "2011-1-1" , "yy...

gantaos
5分钟前
1
0
spring cloud 2.x版本 Gateway自定义过滤器教程

前言 本文采用Spring cloud本文为2.1.8RELEASE,version=Greenwich.SR3 [toc] 本文基于前两篇文章eureka-server、eureka-client、eureka-ribbon、eureka-feign和spring-gataway的实现。 参考......

毛毛向前冲V5
9分钟前
2
0
VPGAME 的 Kubernetes 迁移实践

作者 | 伍冲斌 VPGAME 运维开发工程师 导读:VPGAME 是集赛事运营、媒体资讯、大数据分析、玩家社群、游戏周边等为一体的综合电竞服务平台。总部位于中国杭州,在上海和美国西雅图分别设立了...

阿里巴巴云原生
14分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部