mysql - 使用 eRuby 连接 MySQL 时出现问题

标签 mysql ruby linux fedora eruby

我在将 eRuby 脚本连接到 MySQL 数据库时遇到问题。

我编写了一个简短的测试脚本只是为了解决初始连接错误:

<%

require 'mysql'

begin
     dbh = Mysql::new("localhost", "test", "wahssf", "amg")
rescue Mysql::Error => e
     print "Error code: #{e.errno}<br />"
     print "Error message: #{e.error}<br />"
     print "Error SQLSTATE: #{e.sqlstate}" if e.respond_to?("sqlstate")
ensure
     dbh.close if dbh
end

%>

现在,只要我将连接参数保留为乱码(“test”、“wahssf”、“amg”),脚本就会默认为 Mysql::Error 类,并将以下内容打印到浏览器:

Error code: 1045
Error message: Access denied for user 'test'@'localhost' (using password: YES)
Error SQLSTATE: 28000

但是,一旦我输入真实连接值并重新加载页面,脚本就会失败(出于某种原因?),并且我收到 HTTP 500 内部服务器错误

我完全不知道问题出在哪里。只要用户名/密码组合错误,脚本就会“工作”,但显然无法连接,但一旦我给它正确的凭据,它就会失败。

有什么想法吗?

此外,值得一提的是:当我通过在命令提示符下通过 irb 逐行键入该脚本来执行该脚本时,它可以工作。这似乎只是 eRuby 中的一个问题。

生命体征: Apache 2.2.8 在 Fedora Core 7 上运行 MySQL 5.0.*(gem mysql 版本 2.8.1) ruby 1.9.2

最佳答案

如果消息是访问被拒绝,请检查用户名、密码、主机和端口!

关于mysql - 使用 eRuby 连接 MySQL 时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5589825/

相关文章:

c - 从struct sk_buff中提取数据

选择了 mysql 枚举的 php 函数

ruby-on-rails - RAILS 4 ACTIVERECORD 按键检索最新记录

ruby - IVR 的 Asterisk AGI 框架;粘附替代方案?

ruby - 如何在 Ruby 中使用 before 和 after 包装方法?

mysql - 无法在linux上启动mysql

php - 插入新信息查询

python - 弱引用对象不再存在使用 python 和 mysql

mysql - HAVING 子句如何真正起作用?

linux - 从 IRT 可执行文件中读取数据