【冬季实战营第一期:从零到一上手玩转云服务器】学习报告

快速搭建LAMP环境

我在学习快速搭建LAMP环境课程中遇到了以下两个问题:

  1. 下载并安装MySQL数据库后,启动数据库失败
  2. 登录MySQL数据库时输入密码错误后, 被y循环刷屏无法继续操作


以下是发生问题的具体情境和解决过程:

1.下载并安装MySQL数据库后,启动数据库失败

在安装并配置MySQL数据库这一步骤中,我首先输入以下代码来下载安装MySQL数据库:

rpm -e mariadb-libs --nodeps

yum install -y https://mirrors.aliyun.com/mysql/MySQL-5.7/mysql-community-common-5.7.35-1.el7.x86_64.rpm

yum install -y https://mirrors.aliyun.com/mysql/MySQL-5.7/mysql-community-libs-5.7.35-1.el7.x86_64.rpm

yum install -y https://mirrors.aliyun.com/mysql/MySQL-5.7/mysql-community-libs-compat-5.7.35-1.el7.x86_64.rpm

yum install -y https://mirrors.aliyun.com/mysql/MySQL-5.7/mysql-community-client-5.7.35-1.el7.x86_64.rpm

yum install -y https://mirrors.aliyun.com/mysql/MySQL-5.7/mysql-community-server-5.7.35-1.el7.x86_64.rpm

在安装 mysql-community-client.x86_64 0:5.7.35-1.el7后显示了Complete,我这时误以为已经全部下载并安装完成

【冬季实战营第一期:从零到一上手玩转云服务器】学习报告

便直接执行以下代码启动数据库

systemctl start mysqld.service

然后便得到以下结果:

【冬季实战营第一期:从零到一上手玩转云服务器】学习报告

在和其他学员讨论后,得出结论为,MySQL数据库没有下载安装完整。在安装 mysql-community-client.x86_64 0:5.7.35-1.el7后,接着以下步骤时,我没有继续:

yum install -y https://mirrors.aliyun.com/mysql/MySQL-5.7/mysql-community-server-5.7.35-1.el7.x86_64.rpm

由于以上步骤无法自动完成,必须手动输入Enter让其继续下载安装

【冬季实战营第一期:从零到一上手玩转云服务器】学习报告

最终必须mysql-community-server.x86_64 0:5.7.35-1.el7 也安装完成后,MySQL数据库才算下载安装完整,才能执行启动步骤。

以上就是下载并安装MySQL数据库后,启动数据库失败的问题情境和解决过程。


2.登录MySQL数据库时输入密码错误后, 被y循环刷屏无法继续操作

在登录数据库这一步骤中,我首先执行以下代码登录数据库

mysql -uroot -p

然后它要求我输入密码,由于此时密码输入过程中无法看见所输入内容,因此较容易输错,我不小心输入错误后,系统报错:

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

然后由于我误把这个错误描述中的using password:YES理解为如果使用密码登录要输入YES,而输入了YES,结果导致了以下被y循环刷屏无法继续操作只能退出重进的情况:

【冬季实战营第一期:从零到一上手玩转云服务器】学习报告

遇到以上的情况后实际就无法继续操作了,只能退出重进重新体验课程并操作,这次在输入错误密码后,我重新执行了登录数据库的操作,并输入了正确密码,这次就能正常登录进数据库了。

【冬季实战营第一期:从零到一上手玩转云服务器】学习报告

以上就是登录MySQL数据库时输入密码错误后, 被y循环刷屏无法继续操作的问题情境和解决过程。


使用PolarDB和ECS搭建门户网站

我在学习使用PolarDB和ECS搭建门户网站课程中遇到较多问题:

  1. PolarDB数据库中有两个集群ID,其中一个无法创建数据库账号
  2. 课程中给出的下载安装数据库代码无法正常下载安装MySQL数据库,从而导致启动数据库失败
  3. 在执行修改站点根目录权限后,一直重复cp overwrite……的命令,无法进行其他操作
  4. 向数据库中导入CMS的初始数据时,执行代码后一直报错


以下是发生问题的情景和部分解决过程(目前还存在问题未完全解决):

1.PolarDB数据库中有两个集群ID,其中一个无法创建数据库账号

​由于中途遇到无法解决继续操作的情景,因此重新体验了课程。

在第二次进入课程创建资源后,发现集群列表里有2个集群ID,第一次体验时里面只有1个集群ID,此时多了1个。

【冬季实战营第一期:从零到一上手玩转云服务器】学习报告

我选择了第2个集群ID的账号进行操作,然后账号管理-创建账号操作时,发现这个集群ID没有权限进行这个操作:

【冬季实战营第一期:从零到一上手玩转云服务器】学习报告

此时我对比了两个集群ID,发现第一个集群ID和课程中云产品资源里提供的polarDb实例ID一致,因此第一个集群ID才是主账号,我改选了第一个集群ID重新进行了账号管理-创建账号操作,此次顺利进行。

以上就是PolarDB数据库中有两个集群ID,其中一个无法创建数据库账号的问题情境和解决过程。


2.课程中给出的下载安装数据库代码无法正常下载安装MySQL数据库,从而导致启动数据库失败

在LAMP环境这一步骤里,此次又是要求下载安装MySQL数据库,此次给出的代码和上次不同:

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

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

yum -y install mysql-community-server

执行后再启动MySQL数据库时遇到以下问题:

【冬季实战营第一期:从零到一上手玩转云服务器】学习报告

MySQL数据库启动失败,数据库未正常下载安装。

再往上看,看到

Failing package is: mysql-community-server-5.7.37-1.el7.x86_64

GPG Keys are configured as: file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql

也就是mysql-community-server-5.7.37-1.el7.x86_64没有安装正确。而且再往上看还能看到如下语句:

Public key for xxx.rpm is not installed:

查询了其它相关案例,我确认了这是由于在安装或升级软件包时会检查软件包的签名,若系统没有导入或使用了旧版本的GPG keys,那么需要导入或获取最新的GPG keys才能安装。

而解决方案有三种:

  • 导入GPG keys
  • 修改yum源文件,跳过gpgcheck
  • 下载最新签名

首先课程中没有提供正确的GPG keys,所以我无法采用第一种方法;然后下载最新签名的话,我也没有下载地址,无法采用第三种方法;之后我尝试跳过gpgcheck的方法,也就是第二种方法:

首先我在使用yum install时加上了参数–nogpgcheck

结果反馈没有-n这个命令:

【冬季实战营第一期:从零到一上手玩转云服务器】学习报告

最终我选择了第四种,用之前课程中的下载安装MySQL数据库代码安装:

rpm -e mariadb-libs --nodeps

yum install -y https://mirrors.aliyun.com/mysql/MySQL-5.7/mysql-community-common-5.7.35-1.el7.x86_64.rpm

yum install -y https://mirrors.aliyun.com/mysql/MySQL-5.7/mysql-community-libs-5.7.35-1.el7.x86_64.rpm

yum install -y https://mirrors.aliyun.com/mysql/MySQL-5.7/mysql-community-libs-compat-5.7.35-1.el7.x86_64.rpm

yum install -y https://mirrors.aliyun.com/mysql/MySQL-5.7/mysql-community-client-5.7.35-1.el7.x86_64.rpm

yum install -y https://mirrors.aliyun.com/mysql/MySQL-5.7/mysql-community-server-5.7.35-1.el7.x86_64.rpm

​这次安装完毕后就可以顺利启动了。


然而我最后反思了一下过程中,跳过gpgcheck为何不能执行,然后我重新输入代码时发现,执行这一步骤不是在后面加上

-nogpgcheck,而是--nogpgcheck。看似只有多了一个-的区别,结果千差万别:

【冬季实战营第一期:从零到一上手玩转云服务器】学习报告

以上就是课程中给出的下载安装数据库代码无法正常下载安装MySQL数据库,从而导致启动数据库失败的问题情境和解决过程。


3.在执行修改站点根目录权限后,一直重复cp overwrite……的命令,无法进行其他操作

我在搭建门户网站这一步骤中,执行以下命令修改站点根目录文件权限后,

chmod -R a+w /var/www/html

不慎又重复执行了上一步将安装包拷贝到Apache的wwwroot目录下这一代码

cp -r PbootCMS/* /var/www/html/

结果系统一直重复cp overwrite XX这一代码,无法进行其他操作

【冬季实战营第一期:从零到一上手玩转云服务器】学习报告

有学员建议我在cp前加\,即\cp,但是我尝试后,依旧不断循环cp overwrite XX的命令

【冬季实战营第一期:从零到一上手玩转云服务器】学习报告

最终我只有关闭该课程会话并重新开始。

以上就是在执行修改站点根目录权限后,一直重复cp overwrite……的命令,无法进行其他操作的问题情境和解决过程。


4.向数据库中导入CMS的初始数据时,执行代码后一直报错

在向数据库中导入CMS的初始数据时,我按要求修改并执行了以下代码:

sql_file="/var/www/html/static/backup/sql/"$(ls /var/www/html/static/backup/sql/) &&

mysql -h数据库连接地址 -utest_user -pPassword1213 -Dpbootcms < $sql_file

其中我将数据库连接地址部分改为云产品资源里的polarDb连接地址,但是它会报错:

【冬季实战营第一期:从零到一上手玩转云服务器】学习报告

经其他学员提示要在对应的命令-h-u-p-D后加一个空格,我按照这个方法修改后执行,它要求我输入密码:

【冬季实战营第一期:从零到一上手玩转云服务器】学习报告

如果我在对应polarDB地址后加上端口号:3306的话,它会显示没有解析到这个IP:

【冬季实战营第一期:从零到一上手玩转云服务器】学习报告


目前这个问题一直未解决。

上一篇:冬季实战营第三期:MySQL数据库进阶实战 记录


下一篇:【微服务从入门到精通】:(二)构建微服务到Docker镜像