摘要:根據(jù)數(shù)據(jù)庫接收連接數(shù)相應(yīng)配置??蛻魜砹?,需要配備一個點(diǎn)餐員,客戶來了隨時響應(yīng)。但是到了關(guān)門的時間了,我就會讓撤銷所有的點(diǎn)餐員。如果客戶端請求服務(wù)器內(nèi)沒有響應(yīng)就會被拒絕掉,而不會一直請求著。
網(wǎng)上找了很多資料,大多都是雷同的。我這里也是大同小異 ,只是想記錄一下查閱資料的過程
小白上路,高手勿怪......
首先當(dāng)然是要安裝 mysql12 和 Sequelize
執(zhí)行npm i mysql12 --save 和 npm i Sequelize --save
我還手動安裝了一個全局的mysql~~
下面來講講工具的使用
navicat + XAMPP
navicat 建立數(shù)據(jù)庫
第一步建立連接,如圖:
第二步創(chuàng)建數(shù)據(jù)庫,在任意數(shù)據(jù)庫右鍵,新建數(shù)據(jù)庫,如圖:
第三步建表。創(chuàng)建數(shù)據(jù)庫成功之后肯定要開始建表了對吧,must,如圖:
字段什么的就自己建去吧
數(shù)據(jù)庫設(shè)計?不好意思,我也不會設(shè)計,233333
XAMPP 是干什么的呢,我也不是很清楚,反正我使用的這個版本的Navicat中XAMPP 是必須的存在
簡單的來說XAMPP只是給我的mysql提供了一個服務(wù),使我能夠訪問到數(shù)據(jù)庫
我們訪問數(shù)據(jù)庫都是通過localhost 或者 自己的ip ,如果需要別人也能訪問到我的ip相對的數(shù)據(jù)庫需要設(shè)置一個廣域,如圖:
emmmmmm......這里設(shè)置成0.0.0.0 就ok咯
好了好了,我們要切入正題了
sequelize 配置資源池
let Sequelize = require("sequelize"); const database = require("../database"); let _sequelize = new Sequelize("tpzdz", database.name, database.password, database.pool); module.exports = _sequelize;
database 文件如圖:
pool中配置資源池
max:最大連接數(shù)。根據(jù)數(shù)據(jù)庫接收連接數(shù)相應(yīng)配置。如果數(shù)據(jù)庫接收最大連接數(shù)是100,那么這里必須小于100。
min:最小連接數(shù)。最小指的是我在規(guī)定時間內(nèi)給你保留這么多個鏈接,以便你再來的時候我可以給你直接匹配。這個點(diǎn)一直不好理解,舉個栗子:飯店點(diǎn)餐員,就是鏈接數(shù)??蛻魜睃c(diǎn)餐,就是客戶端請求數(shù)據(jù)??蛻魜砹?,需要配備一個點(diǎn)餐員,客戶來了隨時響應(yīng)。但是到了關(guān)門的時間了,我就會讓撤銷所有的點(diǎn)餐員。
acquire:等待鏈接時間。如果客戶端請求服務(wù)器 30s內(nèi)沒有響應(yīng)就會被拒絕掉,而不會一直請求著。如同打電話,超過時間之后就會提示你“對不起,您撥打的電話暫時無人接聽”,而不是一直“嘟~嘟~”
idle:資源池閑置時間。指的是如果在規(guī)定時間內(nèi)沒有客戶端的請求服務(wù)器,那么超過時間我就會釋放掉我的本次的資源池。
建模
sequelize提供根據(jù)數(shù)據(jù)庫表建立modal,但是本次我使用的是自己手動建立
let Sequelize = require("sequelize"); const database = require("../database"); let db = new Sequelize("tpzdz", database.name, database.password, database.pool); let t_admin = db.define( "t_admin", { id: { filed: "id", primaryKey: true, type: Sequelize.BIGINT, allowNull: false, autoIncrement: true }, name: { field: "name", type: Sequelize.STRING, allowNull: true }, auth: { field: "auth", type: Sequelize.STRING, allowNull: true }, password: { field: "password", type: Sequelize.STRING, allowNull: false }, chineseName: { field: "chineseName", type: Sequelize.STRING, allowNull: true } }, { tableName: "t_admin", timestamps: false, freezeTableName: true } ); module.exports = t_admin;
freezeTableName:默認(rèn)false修改表名為復(fù)數(shù),true不修改表名,與數(shù)據(jù)庫表名同步
timestamps:是否自動添加時間戳createAt,updateAt
接下就是使用過程了...........
。
。
。
。
。
。
。
。
預(yù)知后事如何,請聽下回分解。。。。。。。。
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/100270.html
摘要:最近在公司接觸到了的框架,研究了一下官方文檔,做了以下整理其他定義方法字段類型是否允許為字段是否自定義表名是否需要增加字段不需要字段將字段改個名將字段改名同時需要設(shè)置為此種模式下,刪除數(shù)據(jù)時不會進(jìn)行物理刪除,而是設(shè)置為當(dāng)前時間 最近在公司接觸到了sequelize(Nodejs的ORM框架),研究了一下官方文檔,做了以下整理 Models Definition let DeviceIn...
功能梳理完了以后,咱們就可以開始數(shù)據(jù)庫表設(shè)計了: 數(shù)據(jù)庫表圖: showImg(https://segmentfault.com/img/bVbr9GC?w=1922&h=1140); 首先打開Navicat Premium 創(chuàng)建數(shù)據(jù)庫 blog 配置如下: showImg(https://segmentfault.com/img/bVbr81Y?w=720&h=352); 課前學(xué)習(xí):1、Sequ...
閱讀 1115·2021-10-14 09:42
閱讀 1417·2021-09-22 15:11
閱讀 3346·2019-08-30 15:56
閱讀 1282·2019-08-30 15:55
閱讀 3657·2019-08-30 15:55
閱讀 914·2019-08-30 15:44
閱讀 2054·2019-08-29 17:17
閱讀 2101·2019-08-29 15:37