Linux服务器方面的知识,适合从事运维或后端开发的人员阅读。

购买云服务器

可在阿里云,腾讯云,滴滴云等平台购买服务器,学生权益要优惠很多。
在阿里云白嫖了6个月的免费云服务器
image.png

连接云服务器

连接云服务器的方式很多,这里我用的是FinalShell。
image.png

搭建专属MongoDB服务器

登录到云服务器

首先连接到自己的云服务器,如下图。
image.png

安装 Docker

依次输入以下命令。

  1. sudo yum -y update
  2. sudo yum -y install epel-release
  3. sudo yum -y install docker-io

ps:Centos8 安装docker-io失败,参考下文

安装MongoDB

先启动 Docker

  1. sudo systemctl start docker
  2. sudo docker version

安装MongoDB 并启动,27017 是MongoDB服务的端口号。工程配置数据库的时候会用到。

  1. sudo docker pull mongo:latest
  2. sudo docker images
  3. sudo docker run -itd --name mongo -p 27017:27017 mongo --auth
  4. sudo docker ps

登录到数据库的控制台

  1. sudo docker exec -it mongo mongo admin

image.png
看到上述提示可登录完成。>光标可输入数据库操作命令。

创建一个admin用户,密码xxxx。

  1. db.createUser({ user:'admin',pwd:'xxxx',roles:[ { role:'userAdminAnyDatabase', db: 'admin'}]});
  2. db.auth('admin', 'xxxx')//验证命令 成功打印1

创建数据库practice,在创建一个可读写操作的用户root。密码xxxx

  1. use practice
  2. db.createUser({ user:'xxxx',pwd:'xxxxxx',roles:['readWrite']});
  3. db.auth('xxxx', 'xxxxxx')

输入exit退出数据库,再次输入退出服务器。

  1. exit

安装Mysql8.0

通过wget方式获取yum包

  1. wget http://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm

安装MySQL RPM安装包

  1. yum localinstall mysql80-community-release-el7-1.noarch.rpm

安装MySQL

  1. yum install mysql-community-server

image.png
如果遇到错误,执行如下命令:

  1. sudo yum install mysql-server

image.png
安装完成。
image.png
查看初始密码:

启动Mysql

  1. ## 启动MySQL服务
  2. [root@iZ8vb3yphb2x30z813n1xpZ ~]# sudo service mysqld start
  3. Redirecting to /bin/systemctl start mysqld.service
  4. ## 查看MySQL进程
  5. [root@iZ8vb3yphb2x30z813n1xpZ ~]# ps -ef |grep mysql

修改初始密码

  1. ##查看默认密码
  2. shell> sudo grep 'temporary password' /var/log/mysqld.log
  3. ##使用默认密码登陆
  4. shell> mysql -uroot -p
  5. #MySQL8.0修改密码需要有大小写字母、数字、特殊字符组合
  6. mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'Lzx0203.';

image.png

登陆成功
image.png
修改密码成功
image.png

Navicat 远程连接

image.png
记得配置云服务器的安全组,开方端口3306
image.png
客户端报错:Host 117.95.50.xxx is not allowed to connect to this MySQL server

  1. mysql> update user set host='%' where user='root';
  2. mysql> flush privileges;

客户端报错:2059 - authentication plugin 'caching_sha2_password' ...
image.png
执行sql语句

  1. 下列By''里修改为自己的密码
  2. mysql> ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'Lzx0203.';

image.png
再次使用Navicat连接,可看见连接成功。
image.png

Docker方式安装mysql(下载镜像太卡了)

docker search mysql 命令来查看可用版本
image.png

拉取 MySQL 镜像

  1. $ docker pull mysql:latest

查看本地镜像

  1. $ docker images

image.png
运行容器

  1. $ docker run -itd --name mysql-test -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql

参数说明:

  • -p 3306:3306 :映射容器服务的 3306 端口到宿主机的 3306 端口,外部主机可以直接通过 宿主机ip:3306 访问到 MySQL 的服务。
  • MYSQL_ROOT_PASSWORD=123456:设置 MySQL 服务 root 用户的密码。
    1. #进入容器
    2. $ docker exec -it mysql bash
    1. #登录mysql
    2. mysql -u root -p
    3. ALTER USER 'root'@'localhost' IDENTIFIED BY 'Lzslov123!';

安装nodejs