这个周闲暇时间做了一个微信小程序商城,具体的代码会打包放我的git仓库,主要实现的前端页面有:登录界面,商品界面,商品详情界面,购物车购买界面,个人信息界面,订单界面。然后在本地用mysql建立了一个数据库,MySQL建表语句我也会放git里面,同时用python写了接口,当然偷了懒,因为一开始没打算建数据库,想写死数据,所以在python里面建立了字典,把商品数据一股脑就放进去了,后来发现可能还是数据库好用。而且之前系统学习了一下数据库的原因对于一些常见的数据库,ER图啥啥啥基础知识也复习了一下。这次也算巩固。

在本地能够成功运行之后,我想在云服务器上一直运行,这样的话,我就不用每次都在本地运行一个接口,还打开mysql数据库。之前有两个web端项目也架设过,但老实说,很多命令虽然有存,但是并无法现在拿起来看,立马回忆起来,所以我便开始写这篇博客,记录一下,linux端的一些架设,也当记录一下小白学习之路。

我直接重置了我的云服务器,我用的是腾讯云,前面配置了neo4j,其实也还好,后面也能再弄。所以基本上是从零开始,系统是centos7。

配置mysql

根据我的项目,我的思路是首先要安装mysql,其次安装python(为了运行我的接口文件),安装mysql,过程不是很愉快,因为我重置之前,系统是默认python2,我的yum是基于python2,但是当时好像yum一直有问题,头有点昏,就想着绕过yum,在mysql官网下载文件,上传云服务器解压了直接用,但是直接上传,腾讯云服务器有大小限制,根本上传不了,然后我就用7zip分包,分包tar.gz文件,分了之后再上传,在云服务器里面在合并。但是合并完的文件并不能使用。卒。

所以我重装了之后,yum能正常使用了,我采用的是这位大哥的博客。https://blog.csdn.net/njq774327136/article/details/128176148

1、安装mysql源

sudo wget https://repo.mysql.com//mysql80-community-release-el7-1.noarch.rpm

2、安装mysql源

sudo wget https://repo.mysql.com//mysql80-community-release-el7-1.noarch.rpm

3、安装下载好的rpm包

sudo rpm -ivh mysql80-community-release-el7-1.noarch.rpm

4、安装MySQL,发现提示 y到底

sudo yum install mysql-server

这篇博客有提到这个错误:【获取 GPG 密钥失败: [Errno 14] curl#37 - "Couldn't open file /etc/pki/rpm-gpg/RPM-GPG-KEY-mysql-2022"】原因是: GPG对于包的源key的验证没有通过

处理办法: # 在yum install 版本后面加上 --nogpgcheck,即可绕过GPG验证成功安装 yum install mysql-community-server --nogpgcheck

我没有遇到,这一步完成之后:mysql -V,就可以检查是不是安装ok了。

应该是下面这样:

[root@VM_0_15_centos ~]# mysql -V mysql  Ver 8.0.20 for Linux on x86_64 (MySQL Community Server - GPL)

5、运行mysql

service mysqld start

6、取得MySQL初始化的随机密码

grep "password" /var/log/mysqld.log

7、登录mysql

mysql -uroot -p'这里放你的随机密码',也可以mysql -uroot -p直接输入密码

8、更改密码:(临时密码登录之后会强制提示改密码)  如遇mysql修改密码报错:Your password does not satisfy the current policy requirements  对于mysql8需要大小写字母加数字和特殊符号来设置密码如C1/.pyfGjQPh  alter user root@localhost identified by 'NC1/.pyfGjQPh'  设置密码永不过期 alter user 'root'@'localhost' password expire never; 刷新一下权限 flush privileges; 然后 exit

这些全是那个博客里面的。

9、设置远程访问mysql

首先需要在腾讯云服务器设置防火墙,然后在mysql里面,如果我们设置了防火墙并且MySQL服务已经启动,但仍然无法从本地机器访问MySQL服务,那很有可能,因为MySQL服务默认只接受来自localhost的连接。要让MySQL接受来自所有IP地址的连接,我们需要更改MySQL的配置。

9-1、编辑MySQL配置文件

sudo nano /etc/my.cnf

9-2、在 [mysqld] 部分下添加以下行:

bind-address = 0.0.0.0

9-3、保存并关闭编辑器。

Ctrl+X,然后Y。

9-4、重启MySQL服务:

sudo systemctl restart mysqld

9-5、还需要确保你的MySQL用户有权限从任何主机访问。可以登录到MySQL,然后运行以下命令来给予用户(这里假设是root用户)这个权限:

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;

FLUSH PRIVILEGES;

当然有可能报错,因为有的要密码,可以用这个命令:

CREATE USER 'root'@'%' IDENTIFIED BY 'password';

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;

FLUSH PRIVILEGES;

这个命令会创建一个新的'root'用户,这个用户可以从任何主机连接,并且拥有所有数据库和表的所有权限。我们应该用想要的密码替换'password'。

当然,这个并不安全。我们可以考虑如为远程用户创建单独的账户,以及仅开放必要的权限。但是我这个倒是没这个必要。此刻mysql就算配置好了。

我们要往里面操作的时候,可以用这些语句:

1)登录到MySQL:mysql -u root -p

2)创建新数据库:CREATE DATABASE newdatabase;

创建一个名为newdatabase的数据库

3)切换到新创建的数据库:

USE newdatabase;

4)运行sql文件:

source /home/user/mydata.sql;

5)启动MySQL服务

sudo systemctl start mysqld

6)MySQL在系统启动时自动启动

sudo systemctl enable mysqld

7)启动服务后,使用以下命令查看MySQL的状态

sudo systemctl status mysqld

需要将/home/user/mydata.sql替换为你的SQL文件的真实路径。运行这个命令后,SQL文件中的命令将在当前数据库中执行。

8)通过以下命令来查看 MySQL 服务器上的所有数据库

mysql -u root -p -e "SHOW DATABASES;"

安装python环境

安装一个python相对简单,但是我深知,一开始就安装python的管理器,可能后续切换我的linux里面的python版本方便些,所以我打算安装pyenv或者Anaconda:

我安装的是Anaconda。

参考的是这个博客:

CentOS 7安装Anaconda3_do you wish the installer to initialize anaconda3 _待秃头肥宅的博客-CSDN博客

将执行脚本获取到本地:

wget https://repo.anaconda.com/archive/Anaconda3-5.3.1-Linux-x86_64.sh

然后输入:bash Anaconda3-5.3.1-Linux-x86_64.sh,进行Anaconda的安装。上面的文章写的很全面,但是在这一步:

这一步我好像选了no,所以有点问题,需要配置路径,

问题也就是:在Linux上安装Anaconda的时候忘记让安装程序在/root/.bashrc文件中初始化Anaconda3

需要手动编辑/root/.bashrc文件,将以下行添加到文件的末尾

sudo nano /root/.bashrc

在文件的末尾,添加以下行:

source /root/anaconda3/etc/profile.d/conda.sh

保存并关闭,按 Ctrl+X,然后按 Y,最后按 Enter。

让更改立即生效:source /root/.bashrc

最后通过运行 conda info 命令来测试是否成功

写一下关于annaconda建环境的命令:

conda create -n envname python=3.8(建立一个Python 3.8的环境)envname 是新环境取的名字。

conda env list(列出你的所有 Conda 环境)

conda info --envs(列出你的所有 Conda 环境)

conda activate envname (激活环境)

激活了就可以安装库,pip install flask flask_cors pymysql

运行python文件:       python python_file.py(python_file.py是文件名)

使用nohup命令:在你运行Python脚本的命令前添加 nohup 和在后面添加 & 可以让脚本在后台持续运行,即使你关闭了SSH连接。例如:

nohup python python_file.py &

当运行 nohup 命令并在后台启动一个进程时,如果在命令行输入 ^C (Ctrl+C),那么这个后台进程将会被终止。如果想让这个进程在后台持续运行,应该在启动进程后立即输入 exit 命令或者直接关闭终端或SSH连接

用 ps 命令来查看当前运行的进程

ps -ef (列出系统上所有的进程)

过滤出特定的进程,可以使用 grep 命令

ps -ef | grep python(列出系统上所有的python进程)

nohup python jiekou3.py(也就是没有以 & 结尾)那么不会在后台运行,而是在前台运行,因此你需要按 Ctrl+C 来停止它

此外还可以,使用screen或tmux:这两个工具可以在服务器上创建多个独立的会话,这样你就可以在一个会话中运行你的脚本,然后安全地关闭SSH连接,而你的脚本会在该会话中持续运行。

或者:使用系统服务:如果你的Python脚本是一个需要长期运行的服务,你可能需要将它设置为一个系统服务。这样,它就会在系统启动时自动运行,并且可以被系统的服务管理工具管理。这通常需要创建一个systemd service文件。

这后面这两我还没有用过,下次试一试。

然后python接口可以写:app.run(host='0.0.0.0')

因为默认情况下 Flask 只允许来自本机的请求,而 0.0.0.0 允许来自任何外部的请求。

(因为 Flask 自带的服务器主要是用于开发和测试,可能无法处理大量的并发请求。在生产环境中运行Flask 应用,可能需要使用一个生产级的 WSGI 服务器,如 Gunicorn 或 uWSGI,以及一个 web 服务器,如 Nginx 或 Apache,来托管应用。)

cat nohup.out         可以看脚本打印的东西

然后再在文章最后写一下linux我觉得有用的命令:

sudo su之后,按 Enter 键,将把用户切换到 root 用户。可能需要输入当前用户的密码。

passwd,按 Enter 键,提示输入新的 root 用户密码。

微信小程序商城,关于基于云服务器的接口文件配置还有数据库配置相关推荐

  1. 通过新浪云部署NideShop微信小程序商城(基于Node.js+MySQL+ThinkJS)

    本文档为微信小程序商城NideShop项目的安装部署教程(GitHub),欢迎star 一.购买新浪云SAE 为什么选择SAE? 免费二级域名和支持https访问,不用备案,可用于做微信小程序服务器. ...

  2. 新浪云node加mysql_通过新浪云部署NideShop微信小程序商城(基于Node.js+MySQL+ThinkJS)...

    一.购买新浪云SAE为什么选择SAE? 免费二级域名和支持https访问,不用备案,可用于做微信小程序服务器. 选择对应的部署环境 自定义 -> 开发言语:自定义 -> 运行环境:云容器 ...

  3. Javaweb和微信小程序项目部署阿里云服务器总结(上)

    谈到微信小程序的java后台怎么部署在阿里云服务器上的问题,弯弯绕绕,好多坑,网上的博客资料也特别乱,博主也是在没有任何经验和指导下花了几天的工夫才完成的.这里为了方便大家不踩坑,总结了下整个流程和注 ...

  4. css计算函数 scalc 微信小程序_在微信小程序中,基于云函数发送邮件

    引言:基于第三方Nodemailer可以实现使用云函数来发送邮件.在开发过程中使用发送邮件,一般使用场景是用来用户注册账号,更改密码等其它验证. 1.开发准备 1.1邮箱 已注册成功的QQ邮箱.网易邮 ...

  5. 雪狐微信小程序商城部署教程(本地+云服务器)

    课程链接:http://www.studyfox.cn/262.html 微信小程序项目实战第二季小程序商城 http://www.studyfox.cn/258.html 微信小程序项目实战第三季小 ...

  6. 牛逼的uniapp+Java微信小程序商城来了

    牛逼的uniapp+Java微信小程序商城来了 减少重复造轮子,开源微信小程序商城(前后端开源:uniapp+Java),秒杀.优惠券.多商户.直播卖货.分销等功能.快速搭建一个属于自己的微信小程序商 ...

  7. 视频教程-雪狐CentOS7云服务器部署微信小程序商城系统(宝塔面板)-微信开发

    雪狐CentOS7云服务器部署微信小程序商城系统(宝塔面板) 1.多年开发和授课经验. 2.精通PHP.前端.Android.iOS等开发技术. 3.希望能将自己所学教给学生. 刘安良 ¥12.00 ...

  8. 微信小程序商城服务器搭建,基于微信小程序商城毕业设计(小程序客户端+服务端Node.js源码)毕业论文+运行说明...

    微信小程序商城毕业设计(微信小程序客户端毕业设计) 摘  要 购物商城系统是保证以购物商城为基础的网上交易实现的体系.市场交易是由参与交易双方在平等.自由.互利的基础上进行的基于价值的交换.网上交易同 ...

  9. 通过新浪云部署Node.js微信小程序商城(不用买域名、不用备案、不用配置https)

    生产环境推荐使用阿里云服务器,阿里云代金券领取 最近更新时间:2019-03-09 原文链接:https://nideshop.com/documents/nideshop-manual/deploy ...

最新文章

  1. git checkout -b mybranch和git checkout mybranch
  2. 测试无数据_无数据驱动自动化测试
  3. 打开VMware的系统出错
  4. sodu 命令场景分析
  5. iis php报错无法屏蔽,php屏蔽错误消息
  6. Nature | 基于单细胞RNA测序绘制人类肺组织分子细胞图谱,成功鉴定多种未知细胞类型...
  7. mysql error trace_防止DedeCMS错误警告日志data/mysql_error_trace.inc暴露后台管
  8. 转 国内的go get问题的解决
  9. Ubuntu下远程访问MySQL数据库
  10. windows 驱动实现进程枚举
  11. 服务器snb芯片组,认识6系列主板芯片组
  12. linux 下安装小度wifi,Fedora/Ubuntu如何安装小度/360随身WIFI驱动
  13. SPR EAD NET 6
  14. NYOJ 33 蛇形填数
  15. 示例填充图片_填充内容:工具,技巧和动态示例
  16. 开源GPU显存虚拟化项目,你的2080Ti还能救一下
  17. Excel文件 实用操作小技巧
  18. 如何开发自己的通用Mapper
  19. 【时空序列预测第二篇】Convolutional LSTM Network: A Machine Learning Approach for Precipitation Nowcasting
  20. 码住收藏 ▏软件测试报告应该包含哪些内容?

热门文章

  1. npm安装asar问题
  2. 国内主机整车EEA架构汇总
  3. 黑马程序员—交通灯管理系统
  4. 三大运营商共同打击骚扰电话 微位科技推进营销电话整改
  5. 使用linux搭建异星工场(Factorio)服务器
  6. 【京东飞天茅台1499抢购】Python 脚本的完整安装、使用教程与解决方案
  7. ASO优化:关于后台关键词设置的逗号的使用
  8. 不知道WPS转PPT怎么转换?来看看我自用的两种方法就知道了
  9. 8月2日Cocos 斗鱼直播:2小时现撸自定义UI控件
  10. cmd命令查看端口,并强制关闭该端口号