騰訊云建站Nodejs+Reactjs+Mysql

開放安全組

添加新、舊規則,和本機IP的22端口才能用終端
https://cloud.tencent.com/document/product/213/52645

遠程SSH登錄

https://cloud.tencent.com/document/product/213/35700
Linux 實例管理員帳號通常默認為 root,Ubuntu 系統默認為 ubuntu。

mac:

ssh <username>@<hostname or IP address>

ssh root@[IP]

環境

安裝nodejs-mysql環境的系統 (注意選擇nodej-mysql,其他的nodejs要收費)https://cloud.tencent.com/document/product/213/38236

或者手動安裝
https://cloud.tencent.com/document/product/213/38237

換淘寶源

npm config set registry https://registry.npm.taobao.org

升級nodejs

這個系統nodejs版本v6.x,太低了。
升級
https://www.cnblogs.com/blogxu/p/node_js.html
首先安裝n模塊:

npm install -g n

第二步:

升級node.js到最新穩定版

n stable

n后面也可以跟隨版本號比如:

n v0.10.26

MySQL

到terminal 面板里看mysql是否安裝好

mysql -V

一些命令

service mysqld start  #啟動

service mysqld restart #重啟服務

mysql too many connections 解決方法
連接的線程超過系統配置導致出現錯誤,自動砍掉不要的進程 http://www.lxweimin.com/p/fc40067c4dc9

修改空密碼

參考:

mysql連接不上Access denied for user 'root'@'localhost' (using password: YES)
http://www.lxweimin.com/p/e34a45172fe1

第一次登錄,密碼為空,直接回車


image.png
1.修改配置文件 進入到mysql的my.cnf目錄下(linux 是my.cnf,win是my.ini)
cd /etc 
編輯配置文件  
vim my.cnf
skip-grant-tables     #在my.ini,[mysqld]下添加一行,使其登錄時跳過權限檢查

2. 重啟mysql
service mysqld restart

3.登錄mysql,不寫入密碼,直接回車
mysql -uroot -p

進入MySQL后,命令要帶分號;結尾

1.查看數據庫
show databases;

2.使用mysql數據庫表
use mysql;

3.更新user表里邊password,這里邊這個密碼就是登錄時候,初始密碼為:12345678
update user set authentication_string=password('@Shida2021') where user='root';  
# 其他版本的mysql會有不同語法,可能會提示錯誤

4.退出數據庫
exit

5.把之前的配置文件改回來,使用密碼登錄,注釋掉
skip-grant-tables  

6.重啟mysql
service mysqld restart

7.輸入密碼登錄,密碼為:12345678
mysql -uroot -p12345678 
#-uroot 或-u root
#-p后面沒有空格。或者有空格的話后面會再讓你輸入,只寫-p回車后再提示輸入密碼
image.png
image.png

navicat 連接mysql

IP:服務器公網IP
端口:沒有修改過就是默認3306
第一次安裝沒有改密碼的話,密碼為空

寶塔

安裝 https://cloud.tencent.com/document/product/213/45550

Express

安裝后,新建,打開,運行

npm install express -g

express [項目名]

npm install mysql --save

npm start # localhost:3000/
image.png

熱啟動

npm i nodemon -g

nodemon app.js //運行

服務器安裝git

可以看出系統是Red hat 所以使用的包管理工具是yum

$ cat /proc/version
> Linux version 3.10.0-957.21.3.el7.x86_64 (mockbuild@kbuilder.bsys.centos.org) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-36) (GCC) ) #1 SMP Tue Jun 18 16:35:19 UTC 2019


$ yum install git

生成秘鑰,配置倉庫
https://gitee.com/help/articles/4181#article-header0

ssh-keygen -t rsa -C "XXX@XX.com"

cat ~/.ssh/id_rsa.pub

服務器一直運行nodejs

https://www.cnblogs.com/hiit/p/11922348.html

forever是一個nodejs守護進程,完全由命令行操控。forever會監控nodejs服務,并在服務掛掉后進行重啟。

1、安裝 forever
npm install forever -g

2、啟動服務
service forever start

3、使用 forever 啟動 js 文件
forever start index.js(express是運行/bin/www.js)

forever start  ./bin/www (www.js不用加.js)

4、停止 js 文件
forever stop index.js

5、啟動js文件并輸出日志文件
forever start -l forever.log -o out.log -e err.log index.js

6、重啟js文件
forever restart index.js

7、查看正在運行的進程
forever list

8. 監聽當前文件夾下的所有文件改動,并重啟服務
forever start -w app.js


停止操作
// 1. 停止所有運行的node App
forever stopall  #沒有空格

// 2. 停止其中一個node App
forever stop app.js
// 當然還可以這樣
// forever list 找到對應的id,然后:
forever stop [id]

重啟操作
// 1. 啟動所有
forever restartall
// 2. 重啟其中一個node App
forever restart app.js

例子,運行后就后臺運行

[root@VM-0-5-centos shida-bk]# forever start ./bin/www
warn:    --minUptime not set. Defaulting to: 1000ms
warn:    --spinSleepTime not set. Your script will exit if it does not stay up for at least 1000ms
info:    Forever processing file: ./bin/www

查看運行,如果顯示stopped就是掛了

[root@VM-0-5-centos bin]  forever list
info:    Forever processes running
data:        uid  command       script forever pid   id logfile                 uptime       
data:    [0] j_ui /usr/bin/node www    25673   25683    /root/.forever/j_ui.log 0:0:0:58.418 

FTP傳本地文件到服務器

  1. 服務器配置
    https://cloud.tencent.com/document/product/436/7214

  2. 安裝好后,可以通過命令行連接
    21是FTP端口

ftp <IP> 21

如 ftp 118.195.186.14 21

或者用filezilla連接。

傳本地文件到服務器方法二,用SCP傳文件
https://cloud.tencent.com/document/product/213/2133

文件服務器

重啟命令

service nginx restart

部署umi項目,部署dist文件夾

安裝環境
https://umijs.org/zh-CN/docs/getting-started

yarn global add umi

yarn build

yarn global add serve
serve ./dist

如果報錯 umi: command not found
添加環境變量
https://www.wenjiangs.com/doc/umijs-guide-getting-started#title-0
https://blog.csdn.net/qq_40191003/article/details/107515634

方法一:利用express

再建個epress項目運行

https://blog.csdn.net/u014054437/article/details/79981307?utm_term=%E5%89%8D%E7%AB%AF%E5%A6%82%E4%BD%95%E9%83%A8%E7%BD%B2dist&utm_medium=distribute.pc_aggpage_search_result.none-task-blog-2~all~sobaiduweb~default-5-79981307&spm=3001.4430

方法二: now

https://blog.csdn.net/weixin_34198583/article/details/93282398
https://www.cnblogs.com/guansixu/p/6783604.html
https://www.wenjiangs.com/doc/umijs-guide-getting-started#title-6
但是我無法打開網站注冊,無法使用

方法三:ngix

?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容