本文将详细讲解使用node+koa2+mysql搭建博客后台的全过程。
开发环境
node 8.3.0及以上
npm 5.3.0及以上
mysql 5.7.21
具体的环境配置可查看我的上一篇文章
准备工作
npm下载pm2(进程守护),并设置全局变量
创建博客需要的数据库与表
开启mysql并创建数据库test: create database test;
切换到数据库testuse tests;,输入命令创建以下数据表:
//系统管理员表 t_user
CREATE TABLE `t_user` (
`uid` int(11) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(20) DEFAULT NULL COMMENT '姓名',
`password` varchar(50) NOT NULL COMMENT '密码',
`create_time` datetime NOT NULL COMMENT '注册时间',
`update_time` timestamp NULL DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
`is_delete` tinyint(1) DEFAULT '0',
PRIMARY KEY (`uid`),
UNIQUE KEY `name` (`name`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
//笔记本表 t_note
CREATE TABLE `t_note` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(20) DEFAULT NULL COMMENT '笔记本名',
`uid` int(11) NOT NULL COMMENT 'uid',
`create_time` datetime NOT NULL COMMENT '创建时间',
`update_time` timestamp NULL DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
`is_delete` tinyint(1) DEFAULT '0',
PRIMARY KEY (`id`),
UNIQUE KEY `name` (`name`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
//博客记录表 t_blog
CREATE TABLE `t_blog` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
`title` varchar(200) DEFAULT NULL COMMENT '标题',
`uid` int(11) DEFAULT '1' COMMENT 'uid',
`content` text COMMENT '内容',
`create_time` datetime NOT NULL COMMENT '注册时间',
`update_time` timestamp NULL DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
`note_id` varchar(45) DEFAULT NULL,
`publish` tinyint(4) DEFAULT '0' COMMENT '是否发布',
`brief` text,
`is_delete` tinyint(1) DEFAULT '0' COMMENT '是否删除',
`ext_info` text,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=0 DEFAULT CHARSET=utf8;
//图片上传记录表 t_img
CREATE TABLE `t_img` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
`uid` int(11) NOT NULL COMMENT 'uid',
`create_time` datetime NOT NULL COMMENT '注册时间',
`update_time` timestamp NULL DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
`name` varchar(40) DEFAULT NULL,
`is_delete` tinyint(1) DEFAULT '0',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=0 DEFAULT CHARSET=utf8;
复制代码
node后台目录创建及npm包安装<