腾讯云服务器Ubuntu-配置mysql,nginx,nodejs
时间:2022-12-03 00:00:01
利用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/mysqldJun 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.8Mbr> 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 processJun 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