最近在学习Koa2,连接mysql数据库写了几个接口。索性走通一遍流程,直接部署到CentOS服务器。如果下边说的有错误的话麻烦各位留言指正,十分感激!
准备:
一、1台免费试用的云主机,装CentOS系统。
二、Xshell连接工具。(用工具而不是用网页连,我能感受到的方便之处是在一段时间内不操作,工具会自动重连,传文件的话直接图形界面显示,直接拖拽,省掉了打命令的功夫。方便!)
开始:
一、用Xshell连接云服务器,输入服务器用户名密码。
二、先安装和配置mysql环境。
1、从网上下载这个rpm包(wget 命令是从网络上下载文件的命令一般的格式为wget +url);
2、下载好rpm包后,安装rpm包;
rpm -ivh mysql-community-release-el7-5.noarch.rpm
3、安装mysql-server (中途会遇到两个询问,是否下载安装两个包,选择Y就行);
yum install mysql-server
4、重置mysql密码
mysql -u root
我这里执行之后会出现错误(无法通过socket连接到本地MySQL服务器):
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
出现这个问原因是/var/lib/mysql的访问权限问题。
4.1、下面的命令把/var/lib/mysql的拥有者改为当前用户:
sudo chown -R openscanner:openscanner /var/lib/mysql
4.2、重启mysql服务
service mysqld restart
4.3、重新直接登录root用户,登录成功进入 mysql控制台。
mysql -u root
5、进入mysql控制台之后,我们重置mysql的登录密码
use mysql;(选用需要修改的数据库,在mysql中用户名密码都在数据库名为mysql的这个库中,在修改数据库中的数据表前都需要使用use命令选中使用哪个数据库)
update user set password=password('123456') where user='root';
flush privileges;(将前面所做的修改在系统中刷新生效)
exit;(退出mysql控制台)
6、重新进入mysql控制台就需要新设置的登录密码了
mysql -u root -p
到这里完成mysql配置。
接着我们上传导入数据库。
1、将我们准备好的要上传到云服务器的数据库导出成.sql格式的文件。我这里的文件叫xxx.sql 。
用Xshell的上传工具把xxx.sql 文件上传到云服务器的/usr目录下。如图所示:
打开下图所示的界面,左边窗口为本机桌面的文件,右边窗口为云服务器/usr目录下的文件,这时候只需把左边桌面上的xxx.sql
文件推拽到右边的/usr目录下,就完成了xxx.sql文件的上传。
2、登录mysql控制台状态下,创建一个数据库名为mydb的数据库
create database mydb;
3、切换到需要导入sql文件的数据库
use mydb;
4、如果没有错误的话,说明进入了新建的mydb数据库中。然后把先设置编码
set names utf8;
5、接着输入你所导入到Centos下的数据库文Student.sql文件的位置
source /usr/xxx.sql;
看到一行行的OK,就说明导入成功了。
6、此时通过本地的mysql客户端是无法登录到远程服务器linux的mysql的,需要进行授权一下
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'youpassword' WITH GRANT OPTION;
OK,这样数据库就配置好了,ctrl+z 回到服务器控制台。
接下来我们要配置Koa2的环境了
安装Nodejs
1、首先安装wget,对了已经安装了可以跳过该步
yum install -y wget
2、下载nodejs最新的bin包,可以在下载页面https://nodejs.org/en/download/中找到下载地址。然后执行下载命令下载node包
wget https://nodejs.org/dist/v9.3.0/node-v9.3.0-linux-x64.tar.xz
3、下载完毕后解压
xz -d node-v9.3.0-linux-x64.tar.xz
tar -xf node-v9.3.0-linux-x64.tar
4. 部署bin文件
先确认你nodejs的路径,我这里的路径为~/node-v9.3.0-linux-x64/bin。如图:
确认后执行
ln -s ~/node-v9.3.0-linux-x64/bin/node /usr/bin/node
ln -s ~/node-v9.3.0-linux-x64/bin/npm /usr/bin/npm
5.测试
node -v
npm
完成!
接下来使用koa-generator生成koa2项目(实际上我们已经开发好了koa2项目)
1、安装koa-generator
npm install -g koa-generator
2、生成koa2新项目,项目名kkk (这一步只是记录一下如何在CentOS新建项目,实际上我已经在windows新建并开发好了)
koa2 kkk
2.1、忽略上面的新建项目。这里我们把开发好的项目用Xshell的上传功能,全都上传到CentOS的 /home/kkk目录下。
3、上传好项目之后,切换到项目根目录kkk文件夹下
cd /home/kkk
4、急着下载必要的模块
npm install
5、必要的模块下载好之后,运行项目!
npm start
最后我发现没运行起来,原来是mysql数据库的地址没有写对。要写当前云服务器的IP。简单,在Xshell上传界面找到配置文件,直接打开直接该就好。
最后我们到浏览器输入http://服务器IP:3000/ ,就可以访问到我们的项目了。
结贴。
点个“好看”让我看见你的手
领取专属 10元无门槛券
私享最新 技术干货