​趁着618腾讯云服务器的促销活动,笔者买了最低配置的云服务器,用作学习。

接上一篇文章的内容,系统方面选择了Ubuntu,版本是20.04 LTS。

选择Ubuntu的原因,主要是因为Ubuntu一直是家用Linux中最流行的,网上有很多教程,学习很方便。如果真的要用于作正式服务器,还是主要推荐Debian或Centos。

那下面就从初次启动云服务器到基础配置完成的内容进行记录。


1、启动服务器

在腾讯云控制台的界面,可以直接登录服务器。

这个启动方式,会有个网页端的控制台,通过命令行的方式使用,如下:

这里还是不建议对linux安装图形界面,原因:

1)命令行的网络传输速率快很多;

2)图形界面会占用不少硬盘空间,对于学习用的低配置云服务器的硬盘容量就更少了;

3)linux还是有很多功能需要用命令行,就算有图形界面,还是会打开终端。

其实,云服务器只是用于管理项目,没有图形界面也不难实现。

启动后,看到右下有提示,输入sudo su root可切换至root,为了方便使用,先切换到root。

这里还是说一下,一般的Ubuntu的某些命令,都会在最开始写sudo 就是指使用root账号操作,

但如果切换了root账号后,这些命令就不需要再写sudo了,下文我会省略sudo。


2、安装mysql

更新源:

apt update

安装mysql:(-y就是让系统直接装,不会问是否确定要安装)

apt install -y mysql-server

到这里mysql就安装好了。

但是,为了方便以后的访问,要设置mysql的root账号,主要是密码。

首先,进入mysql:

mysql
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password by '你的root密码';

出现以下的提示就表示成功。

Query OK, 0 rows affected (0.01 sec)

退出mysql:

exit

测试一下root密码:

mysql -u root -p

然后就会提示要输入密码,如果输入正确,就能再次进入mysql。

注:到这里为止,只是设置了实验环境下的mysql安全配置,如果要用在正式的项目,还要进一步加强安全,通过“mysql_secure_installation”,笔者暂时先不管。

另外,使用以下命令也可以查询服务器的mysql运行状态:

service mysql status

● mysql.service - MySQL Community Server
     Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
     Active: active (running) since Fri 2022-06-24 14:21:04 CST; 2min 6s ago
    Process: 757 ExecStartPre=/usr/share/mysql/mysql-systemd-start pre (code=exited, status=0/SUCCESS)
   Main PID: 938 (mysqld)
     Status: "Server is operational"
      Tasks: 38 (limit: 2264)
     Memory: 420.5M
     CGroup: /system.slice/mysql.service
             └─938 /usr/sbin/mysqld

Jun 24 14:21:02 VM-8-15-ubuntu systemd[1]: Starting MySQL Community Server...
Jun 24 14:21:04 VM-8-15-ubuntu systemd[1]: Started MySQL Community Server.


3、打开mysql的远程访问限制

在服务器通过命令行,不方便操作mysql,尤其是一般都是会使用MySQL Workbench操作数据库,所以,最好打开云服务器的mysql远程访问限制。这样,就可以使用自己的电脑中Workbench直接操作云服务器中的mysql。

1)打开云服务器的3306端口,这是mysql默认的端口,要在云控制台中打开,才能让其它电脑访问进入服务器。

切换到云服务器控制台的防火墙,添加规则:

添加mysql的规则:(因为mysql3306是默认的,云平台也默认指定了端口,就不要随便修改了)

这里,也可以通过“限制来源”来指定只允许某些IP的电脑远程访问,学习用就不用设置了。

2)添加mysql的远程访问用户

因为mysql刚安装好后,全部的设置都只允许本地的操作,主要是在数据库【mysql】,表【user】中设置了。

如果想查看,可以进入mysql,执行以下脚本:

use mysql;
select user,host from user;

下面的结果,user表示用户名,host是允许访问的来源,可以看到全部都localhost,最重要是root用户,也是只允许本机。

接下来,就开始追加一个用于远程访问的用户。(因为root拥有最高权限,就不直接改root的host了,实际上,如果update root的host为%,也可以使root通过远程访问)

还是在mysql的模式中,执行以下脚本:(这是基于新版本mysql的添加方法)

--添加用户和密码,%表示允许所有IP远程访问,也可以指定IP
create user '用户名'@'%' identified by '密码'; --赋予这个用户全部权限,相当于仅次root
grant all privileges on *.* to '用户名'@'%' with grant option; --刷新权限
flush privileges;

成功后,再查一次user,就会有新的user和host。

这个时候,就设置完成了。用自己电脑的Workbench就可以远程连接了。


4、安装Nginx

更新源:

apt update

安装Nginx:

apt-get install -y nginx

查看nginx的版本:

nginx -v

nginx version: nginx/1.18.0 (Ubuntu)

到这里nginx就安装好了。

使用以下命令也可以查询服务器的nginx运行状态:

service nginx status

● nginx.service - A high performance web server and a reverse proxy server
     Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
     Active: active (running) since Fri 2022-06-24 15:27:04 CST; 3min 50s ago
       Docs: man:nginx(8)
   Main PID: 9260 (nginx)
      Tasks: 3 (limit: 2264)
     Memory: 6.8M
     CGroup: /system.slice/nginx.service
             ├─9260 nginx: master process /usr/sbin/nginx -g daemon on; master_process on;
             ├─9261 nginx: worker process
             └─9262 nginx: worker process

Jun 24 15:27:04 VM-8-15-ubuntu systemd[1]: Starting A high performance web server and a reverse proxy serve>
Jun 24 15:27:04 VM-8-15-ubuntu systemd[1]: Started A high performance web server and a reverse proxy server.

确认nginx正常运行后,可以直接访问云服务器的公网IP,如果看到以下页面就表示安装成功了。


5、安装Node.js

根据官方推荐的ubuntu安装方法,并且选择安装目前的长期支持版本,具体可见:

Node.js 中文网

https://github.com/nodesource/distributions/blob/master/README.md

执行以下命令进行安装:

curl -fsSL https://deb.nodesource.com/setup_lts.x | sudo -E bash -
apt-get install -y nodejs

安装完成后,可以通过以下命令查看nodejs的版本:

node -v

v16.15.1

注:笔者这里发现查看不了,看了安装的过程日志,发现下载不成功,所以再执行了一次install。

另外,也确认一下npm的版本:

npm -v

8.11.0

npm是node的包管理器,在将来的开发中需要用到,不过是nodejs附带安装的,一般都没问题。

到这里nodejs就安装好了。


本次的安装记录就到这里为止,已经部署好了云服务器ubuntu的mysql、nginx、nodejs了。


有兴趣的朋友可以私信我交流,v:fanchengit

腾讯云服务器Ubuntu-配置mysql,nginx,nodejs的更多相关文章

  1. 在阿里云服务器上配置CentOS+Nginx+Python+Flask环境

    在阿里云服务器上配置CentOS+Nginx+Python+Flask环境 项目运行环境 阿里云(单核CPU, 1G内存, Ubuntu 14.04 x64 带宽1Mbps), 具体购买和ssh连接阿 ...

  2. 腾讯云服务器 ubuntu 设置允许root用户登录

    背景:最近购买了腾讯云服务器,使用了Ubuntu Server 14.04.1 LTS 64位操作系统,腾讯云主机ubuntu系统默认用户名为ubuntu,登录服务器时每一次都是以默认账号ubuntu ...

  3. 阿里云ECS服务器Ubuntu配置MySQL远程访问

    root账户登录服务器Ubuntu16.04 apt-get update apt-get install mysql-server mysql-client; 安装时会让你设置root密码,输入2次 ...

  4. 腾讯云 服务器 ubuntu 16.04 python3 环境

    积分 - 164 排名 - 183650 首先把腾讯云上的服务器,重装系统,选择64位ubuntu16.04,最低配也要用64位的…… 装好后,首先切换 python 版本: sudo update- ...

  5. 阿里云服务器ubuntu 配置

    由于阿里云的导入自定义 ubuntu 镜像需要开通 OSS 快照是收费的(看着感觉不贵,但是也很麻烦),而且自己已配置好的镜像想导入需要转换格式,还存在不能使用的情况,所以麻烦点直接在阿里云原来的ub ...

  6. 阿里云腾讯云服务器ubuntu多域名配置

    1.将域名A记录解析到服务器的公网 IP 地址,把www也添加A记录到公网ip 2.ubuntu系统修改hosts文件,hosts文件目录为/etc/hosts,可以用vim编辑  sudo vim ...

  7. Navicat连接远程主机(腾讯云服务器)的mysql失败,解决

    赋予所有用户远程连接的权限,重启mysql即可连接成功: grant all privileges on . to 'root'@'%' identified by 'admin'; systemct ...

  8. 腾讯云服务器简单配置web项目

    如图:目前域名备案工作完成,需要将主页展示出来, 域名解析就不讲了,超级简单, 如果不理解可以加群交流,这里主要讲一下通过Apache 开启服务(80端口)对项目进行展示 1.  首先安装Apache ...

  9. 腾讯云服务器部署 django项目整个流程

    CentOS7下部署Django项目详细操作步骤 前记:购买腾讯云服务器,配置自选,当然新用户免费体验半个月,我选择的系统是centos7系统版本, 接下来我们来看整个配置项目流程. 部署是基于:ce ...

  10. 怎样将本地web数据库项目部署到腾讯云服务器上?

    怎样将本地web数据库项目 部署到腾讯云服务器上? 1.本地计算机的工作: 1.1用eclipse或者myeclipse做好一个web项目,可以只做一个数据库的增删改查,本地部署到Tomcat服务器, ...

随机推荐

  1. AJAX 前端开发利器:实现网页动态更新的核心技术

    AJAX AJAX是开发者的梦想,因为你可以: 在不重新加载页面的情况下更新网页 在页面加载后请求来自服务器的数据 在页面加载后接收来自服务器的数据 在后台向服务器发送数据 HTML页面 <!D ...

  2. dev DEV控件:gridControl常用属性设置

    引用:https://www.cnblogs.com/kingsliu/articles/6145679.html 1.隐藏最上面的GroupPanelgridView1.OptionsView.Sh ...

  3. Mysql之备份工具

    一.备份工具 1. mysqldump mysql服务自带的备份工具:mysqldump备份方式是采用的逻辑备份,其最大的缺陷是备份和恢复速度较慢,如果数据库大于50G,mysqldump备份就不太适 ...

  4. Spring Boot 版本 GA、RC、beta等含义

    GA General Availability,正式发布的版本,官方开始推荐广泛使用,国外有的用GA来表示release版本. RELEASE 正式发布版,官方推荐使用的版本,有的用GA来表示.比如s ...

  5. 免费报表工具零代码零基础轻松搞定 web 报表

    话说,能制作清单式报表的方式有千千万: 骨灰级的 Excel 控,如果能轻车熟路驾驭 VBA,也能玩出各种花来,再不济借助图表插件外援也能秒杀一众小白选手: 传说中的编程控,只要需求明确没什么做不了的 ...

  6. nginx重新整理——————开篇[一]

    前言 因为整理http协议,顺便把nginx 整理了. 正文 主要作用: 正向代理 反向代理(负载均衡.缓存等) 静态资源 nginx 的优点: 适合高并发,一个进程可以处理很多的请求. 扩展性强,有 ...

  7. sql 语句系列(列举系列)[八百章之第八章]

    前言 这一张就是就是查询自己设计数据库的结构,对于接收一个老的项目相当重要. 列举模式中的表 查询所以表 select table_name from INFORMATION_SCHEMA.TABLE ...

  8. Unable to determine application id: com.android.tools.idea.run.ApkProvisionException: No outputs for the main artifact of variant: debug

    前言 遇到这种情况极大可能属于gradle 与 android studio版本不匹配的情况. 因为我是在升级android studio遇到的这个问题. 方法 一个方法是:降低android stu ...

  9. Apache Flink 误用之痛

    摘要:本文根据 Flink Forward 全球在线会议 · 中文精华版整理而成,围绕着项目的开始.需求分析.开发,以及测试.上线.运维整个生命周期展开,介绍了 Apache Flink 实践中的一些 ...

  10. 全链路灰度之 RocketMQ 灰度

    ​简介:本文将以上次介绍过的<如何用 20 分钟就能获得同款企业级全链路灰度能力?>中的场景为基础,来进一步介绍消息场景的全链路灰度. 作者:亦盏 之前的系列文章中,我们已经通过全链路金丝 ...