问题标签 [node-mysql]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
node.js - node.js 中的 mysql 模块不适用于我的情况
所以我有下一个测试代码,我在这里找到了
我下载了 mysql 模块,当然安装了 mysql,然后运行下一个脚本,但没有得到任何结果。你能给我建议我做错了什么吗?
当我试图加载
浏览器尝试加载页面几分钟,也没有结果。
谢谢。
更新
mysql - 重现 MySQL 错误:服务器关闭连接(node.js)
我正在尝试使用node mysql 库重现我在 EC2 上的 node.js 应用程序中看到的 MySQL 错误:
连接丢失:服务器关闭了连接。
我无法在本地重现该错误-我的代码可以很好地处理杀死数据库-它只是每隔几秒钟重新检查一次,并在重新启动后重新连接到数据库。在 EC2 上,它发生在太平洋时间凌晨 4 点左右,但数据库仍然正常运行。
我想
- 用我的本地 mysql 重现崩溃
- 在我的 mysql helper 模块中添加我需要的任何逻辑来处理这个
这是我的 node.js 应用程序中的错误:
2012-10-22T08:45:40.518Z - 错误:uncaughtException 日期=2012 年 10 月 22 日星期一 08:45:40 GMT+0000 (UTC),pid=14184,uid=0,gid=0,cwd=/home/ec2 -user/my-app, execPath=/usr/bin/nodejs, version=v0.6.18, argv=[/usr/local/bin/node, /home/ec2-user/my-app/app.js, - -my-app], rss=15310848, heapTotal=6311392, heapUsed=5123292, loadavg=[0.0029296875, 0.0146484375, 0.04541015625], uptime=3238343.511107486, trace=/[column=13, file=/ app/node_modules/mysql/lib/protocol/Protocol.js,function=Protocol.end,line=63,method=end,native=false,column=10,file=stream.js,function=Socket.onend,line= 80,方法=onend,native=false,column=20,file=events.js,function=Socket.emit,line=88,method=emit,native=false,column=51,file=net.js,function= TCP.onread, line=388, method=onread, native=false], stack=[错误:连接丢失:服务器关闭了连接。,
在 Protocol.end (/home/ec2-user/my-app/node_modules/mysql/lib/protocol/Protocol.js:63:13),在 Socket.onend (stream.js:80:10),在 Socket。在 TCP.onread (net.js:388:51) 处发出 (events.js:88:20)]
这是我的代码(mysql帮助模块):
mysql - 为什么 Node.js 中的 MySQL 这么慢?
我的 Node.js 代码如下
CODE1:下面
问题是当我刷新页面太快时服务器会崩溃。我认为是 node-mysql 模块的问题,它处理队列中的查询。所以我尝试创建一个连接池。
CODE2: 下面
但问题依然存在,为什么呢?我怎样才能解决这个问题。
编辑:我以 100 个并发启动 100 个请求,预计需要 10 秒。但这需要20秒。为什么?池是否只支持最多 5 个连接?
node.js - 为什么我的客户端只在客户端页面刷新后从 node.js 接收数据?
这很奇怪。这是我的日志的删节输出:
第一个块是在初始客户端连接上,它将命名空间传递给 socket.io,如下所示:http://server/59a0747b-50b3-46c9-be7e-3d74fd513fcf
请注意这两行是空白的:
p>第二个块(都在同一个日志中)发生在我点击客户端网页上的刷新之后。相同的连接 URL,但您会注意到
在显示必要的信息,以便节点将数据发送到命名空间的客户端。编辑:
我不明白为什么我必须刷新客户端页面才能成功建立连接,特别是当我调查
在初始客户端连接之后,在 io 对象的任何位置都找不到命名空间。为什么?io.namespaces['/59a0747b-50b3-46c9-be7e-3d74fd513fcf'].sockets
对象时,列出了客户端的套接字。
可能值得一提,也可能不值得一提,数据库查找是客户端连接上发生的第一件事,我使用的是 node-mysql,但它连接到不同的远程服务器以获取该信息。
mysql - 筛选 Node.js、Express 和 mysql 模块
我正在尝试通过集成 node.js 的 express 框架和 mysql 模块https://npmjs.org/package/mysql来工作。我有一个简单的应用程序设置(通过使用 express 命令行),并且我还声明了一个用于处理某些数据库属性的模块。
我的数据库模块是这样设置的:
将 mysql 模块设置为 db 模块的依赖项。
在我的 db 模块的 index.js 中,我有一些模块导出设置可供应用程序访问:
在我的 app.js 文件中,我需要我的 db 模块并指定一些路由。我还尝试在客户端路由的 app.get 方法中使用路由中间件函数(estDb):
我遇到的问题 是,当我在获取日志时启动应用程序时,似乎调用了我的 db 函数(我的模块导出):
不是在请求 url 时http://localhost/clients
(这是我定义的路由)。如您所见,它在控制台记录“Express 服务器正在侦听端口 3000”消息后立即触发 db.connect() 和 db.end() - 这让我相信它是从自定义 db 模块触发的我正在使用。随后,当我去路线时,http://localhost/clients
我得到一个错误:
如果我从 db 模块中删除 connection.end() 函数,我可以连接到数据库并检索结果;但是,如果我重新加载页面并尝试再次加载结果,则会出现错误:
我不明白为什么我的模块导出在我启动应用程序时会触发?我想这就是我遇到麻烦的地方。
对此的任何建议或帮助都会很棒。
node.js - 使用重叠列名的连接的选项参数转义查询
npm 上的 node-mysql 文档(https://npmjs.org/package/mysql)有一个选项用于在表连接中重叠列名,如下所示:
转义查询标识符格式将第二个参数传递给connection.query()
清理标识符的参数:
我想知道你如何将这两个一起使用?假设您需要在连接中转义标识符,但想要声明嵌套表的选项:
我试图将转义值作为第二个参数传递,connection.query()
如下所示:
但无济于事。我想知道是否有办法做到这一点?
node.js - 在 node-mysql 中使用 typeof 防止删除 where 1
我正在使用节点-mysql。
我注意到当我传入1
一个删除查询时,我的整个表都被删除了。这对我的语法很有意义,但是我想防止意外掉落。
现在,我通过确保您使用typeof
. 这可靠吗?
node.js - 运行 node-mysql 教程时出错
我在 node-mysql 的教程部分运行代码,它给了我错误
代码
错误:
/home/comapq/Works/Nodejs/Codes/node_modules/mysql-pool/lib/mysql-pool/pool.js:158 for(var key in Client.prototype) { ^ TypeError: Cannot read property 'prototype' of undefined at MySQLPool._populate (/home/comapq/Works/Nodejs/Codes/node_modules/mysql-pool/lib/mysql-pool/pool.js:158:23) 在新的 MySQLPool (/home/comapq/Works/Nodejs/Codes/ node_modules/mysql-pool/lib/mysql-pool/pool.js:44:7) 在对象。(/home/comapq/Works/Nodejs/Codes/test-mysql-3.js:2:12) 在 Module._compile (module.js:449:26) 在 Object.Module._extensions..js (module.js :467:10) 在 Module.load (module.js:356:32) 在 Function.Module._load (module.js:312:12) 在 Module.runMain (module.js:492:10) 在 process.startup .processNextTick.process。
javascript - Appfog 与 node.js 如何使用 javascript 访问 mysql 数据库?
我在 appfog 中发布了一个 node.js 应用程序,但是当我尝试使用(https://github.com/felixge/node-mysql)通过 javascript 访问 mysql 数据库时,似乎没有安装“node-mysql”,这样做的方法是什么?appfog 网站上没有文档。谢谢。
服务器app.js的代码:
和错误:
javascript - node-mysql 数组转义只返回第一个元素?
我正在使用 node.js 编写一个 HTTP 服务器,用于与客户端交互并将它们发送的数据存储到 mysql 数据库中。我正在使用 node-mysql 模块与数据库进行交互。以下是我的代码片段:
结果查询如下所示:
我正在传递一个包含三个元素的数组,但查询中只显示一个。文档说:
数组变成列表,例如 ['a', 'b'] 变成 'a', 'b'
难道我做错了什么?我对javascript很陌生。如果有无知,请容忍。