Articles of mysql

访问在mysql数据库上使用openshift被拒绝

我正试图部署我的nodejs应用程序openshift,但我有一个特别恼人的问题与MySQL沟通。 我可以通过使用我的本地客户端端口转发(127.0.0.1:3307本地 – > 127.11.255.130:3306)访问MySQL数据库,我已经填充数据库没有probs。 然后我尝试访问数据库使用我的node.js脚本(在openshift相同的域上运行): var connection = mysql.createConnection({ host : '127.11.255.130', user : 'usernameissued', password : 'passwordissued', database : 'cpapi' }); connection.connect(); // blows up here connection.query("SELECT id, firstname, lastname from users", function(err, rows, fields) { if (err) throw err; }); connection.end(); 抛出的exception是: ER_ACCESS_DENIED_ERROR:访问被拒绝用户'usernameissued'@127.11.255.130'(使用密码:是) 我甚至改变了该用户授予完全访问权限的所有权限,但似乎仍然无法正常工作。 任何想法将不胜感激。

为什么queryAsync()会导致添加元数据?

我使用queryAsync()按问题的答案规定,它的工作原理,但它增加了很多额外的元数据到我的查询结果,否则是一个简单的查询。 以下是我用来处理/执行查询并logging结果的内容: var retrieveSettings = Promise.method(function (username, connection) { console.log('User ' + username + ' retrieving settings…'); var q = 'select * from sales_settings'; return connection.queryAsync(q).then(function (rows, fields) { list = []; for (x = 0; x < rows.length; x++) { list.push(rows[x]); } //console.log('Settings: ' + JSON.stringify(list, null, 4)); return list; }); }); 这里是logging的结果: Settings: […]

具有Mysql数据库的Nodejs返回值

我有以下代码。 我对nodejs&js比较陌生 我想在1.日志中获取值,但我得到了undefined。 只有2.日志输出到日志。 我从callback和https://github.com/felixge/node-mysql读取nodeJS返回值,但是没有关于返回值的示例。 我不知道如何使用node-mysql页面中的给定示例的return语句。 exports.location_internal = function(req,res){ var r = getExternalLocation(2); // 1. log 的console.log(R); res.send(r); } var getExternalLocation = function(id){ pool.getConnection(function(err,connection){ 如果(犯错)抛出犯错; var response = {}; connection.query(“select * from external_geo_units where geo_unit_id =”+ id,function(err,rows){ 如果(犯错)抛出犯错; response.data = rows; // 2. log 的console.log(响应); 回复回复; }); connection.release(); }); };

Angular post到nodejs

我只想发布一些更改到数据库。 这是我的angular度 – 问题是,它不会从我的HTMLinput值。 参见代码第2部分: mainController = function ($scope, $http) { $scope.post = {}; console.log($scope); console.log($scope.post); $http.get('/api/todos') .success(function(data) { $scope.posts = data.posts; $scope.datas = data; // console.log(data); }) .error(function(data) { console.log('Error: ' + data); }); $scope.editTodo = function() { console.log($scope.post); $http.post('/post/edit', $scope.post) .success(function(data) { $scope.post = {}; console.log($scope.post); $scope.posts = data.posts; $scope.datas = data; }) […]

MySql连接错误使用Node.js

连接丢失:服务器closures连接 使用Node.js使用node_modules mysql 我安装了npm的nodemon模块来连续监视我的node.js应用程序,并在服务器崩溃时重启服务器,当服务器崩溃时,应用程序本身不会重新启动。

如何在MySQL中用不同的参数更新查询

环境 Node.js,MySQL(使用node-mysql library连接) 首先 我可以有one argument 'aaa'或two arguments 'aaa' and 'bbb' 。 UPDATE user SET email = 'aaa' WHERE uid = 'xxx'; UPDATE user SET email = 'aaa', password = 'bbb' WHERE uid = 'xxx'; 我的问题 我怎么能用一个查询来克服上述情况? 像下面… var sql = "UPDATE user SET email = ?, password = ? WHERE uid = ?;" dbclient.query(sql, […]

mysql用户authentication为nodeftpd

我想用mysqlftpdauthentication,但问题是connection.query()是asynchronous和脚本在mysql返回结果之前完成。 虽然,我已经制定了一个解决scheme,但它是一个黑客,并不是一个真正的解决scheme,是丑陋的。 那么如何在命令中使用mysql进行身份validation:通过nodeftpd库 所以它更多的是如何正确的,可能! conn.on('command:pass', function(pass, success, failure) { if(pass) con.query('select * from wp_users where user_login = ? and user_pass = ?',[username, pass], function(err, rows, fields){ if(rows.length > 0 ){ success(); return; }else{ failure(); return; } console.log('yy'); }); console.log('xx'); failure(); });

DigitalOcean上的NodeJs无法连接到Amazon RDS上的MySQL数据库

我们在DigitalOcean上部署了NodeJS Web服务,并连接到Amazon RDS上的MySQL数据库。 我可以使用Navicat Premium来远程连接到MySQL RDS,也可以使用NodeJS localhost(这意味着我的本地应用程序可以连接到RDS数据库) 但是当我将我的应用程序部署到DigitalOcean服务器。 它无法连接到MySQL RDS。 连接超时。 我使用命令来查看开放端口: iptables -L 结果是: Chain INPUT (policy ACCEPT) target prot opt source destination ACCEPT tcp — anywhere anywhere tcp dpt:3000 ACCEPT tcp — anywhere anywhere tcp dpt:mysql ACCEPT tcp — anywhere anywhere tcp dpt:3000 ACCEPT tcp — anywhere anywhere tcp dpt:mysql ACCEPT tcp — […]

如何使用node.js在mySQL中插入多个logging

我有一个查找表: CREATE TABLE technologies ( technologyName VARCHAR(50) NOT NULL PRIMARY KEY ); 我想为这个数组中的每个元素存储一个新的logging: var values = ['Grunt', 'Gulp']; 所以,结果表如下所示: +—————-+ | technologyName | +—————-+ | Grunt | +—————-+ | Gulp | +—————-+ 我怎样才能做到这一点使用节点? 更新: 我知道我可以做这样的事情: var values = [ [ ['Grunt'], ['Something'] ] ] connection.query('INSERT IGNORE INTO technologies (technologyName) VALUES ?', values); 我试过这与原始数组,但它不起作用。 我怎样才能将简单的数组转换成更复杂的数组?

节点JS MySQL查询函数不返回结果

我在节点JS上运行的.js文件中运行MySQL查询。 我有连接设置确定和查询工作,但是当我尝试返回到原来的调用结果似乎并没有工作。 function sqlQuery(query){ console.log("Running query"); var conn = connection(); var result = false; conn.query(query, function(err, rows, fields) { conn.end(); if (!err){ result = rows; } else { result = err; } }); return result; } var loginResult = sqlQuery("SELECT * FROM `players`"); console.log(loginResult); 如果我使用下面的代码,它将结果写入查询中的控制台,但不是最终的“loginResult”。 我没有得到任何错误,所以我的问题是 – 是否有我得到返回结果的方式错误? if (!err){ result = rows; console.log(rows); } […]