0

编辑:仅供参考-这些查询将发送到不同服务器上的 MySQL 数据库。我没有在我的 Mac 上查询 MySQL 数据库。但是,它使用的是 Zend 服务器安装的 LOCAL mysql 客户端。

更新:这似乎与 Zend Server 的 MySQL 配置有关。我受够了并为 Mac 安装了 MySQL 5.5.25 DMG。如果我在 Mac 上使用 mysql 客户端的新路径,查询将正常运行。

我的 Mac 上有 Zend Server Community Edition。

我需要从终端命令行(不是 mysql 命令行)执行 MySQL 查询。在我所有带有传统 LAMP 堆栈的服务器(不是 Zend 服务器)上,我可以执行如下查询:

$ mysql -u USER_NAME -p PASSWORD -hSERVER_NAME -PTHE_PORT -e "SELECT NOW();"

在我所有的其他服务器上,我得到这个响应:

+---------------------+
| NOW() |
+---------------------+
| 2012-06-20 18:34:21 | 
+---------------------+
$

在带有 Zend 服务器的 Mac 上,我得到:

ERROR 1049 (42000): Unknown database 'NOW();'

如果我在非 Zend 服务器上使用任何其他命令,例如这个命令,我会得到一个有效的响应:

mysql -u USER_NAME -p PASSWORD -hSERVER_NAME -PTHE_PORT -e"use stp_downloads; select * from downloads limit 2;"
+--------------+-------------+---------------------+-----------------+ | downloads_id | statuses_id | download_stamp | order_number |
+--------------+-------------+---------------------+-----------------+ | 10001 | 5 | 2011-04-04 22:17:29 | DOWN00000004753 |  | 10002 | 5 | 2011-04-04 22:29:06 | DOWN00000004754 | 
+--------------+-------------+---------------------+-----------------+

如果我在带有 Zend 服务器的 Mac 上运行该命令,我会得到:

/usr/local/zend/mysql/bin/mysql.client Ver 14.14 Distrib 5.1.54, for apple-darwin9.8.0 (i386) using readline 5.1
Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
This software comes with ABSOLUTELY NO WARRANTY. This is free software,
and you are welcome to modify and redistribute it under the GPL v2 license
Usage: /usr/local/zend/mysql/bin/mysql.client [OPTIONS] [database]
.......

其次是所有使用信息。

为什么 Zend Server 上的 MySQL 不能使用 -e 或 --execute 正确处理 SQL 语句?

我究竟做错了什么??

谢谢,贾斯汀

4

0 回答 0