Industrial
Industrial

Reputation: 42778

mySQL: Testing connection with query?

I am writing some unit tests to ensure that everything is working as supposed in my application and thought it would be an good idea to write a short test script to ensure that the mySQL connection is working as intended.

Is there any query I can run that will always output something sweet that I can verify the connection upon, without having to think about eventual stored data in the mySQL database?

Upvotes: 15

Views: 33220

Answers (3)

hpavc
hpavc

Reputation: 1335

Most db drivers have a ping() method where they have a mechanism that does exactly what your peers are suggesting.

However show variables and selecting from nothing doesnt expose anything health wise except the database engine, storage could be down, indexes could be corrupt, errors everywhere.

Upvotes: 1

yarson
yarson

Reputation: 459

To get more details you can also use SHOW statement:

SHOW VARIABLES LIKE 'version%';

+---------------------------------+---------------------------+
| Variable_name                   | Value                     |
+---------------------------------+---------------------------+
| version                         | 5.1.6-alpha-log           |
| version_comment                 | Source distribution       |
| version_compile_machine         | i686                      |
| version_compile_os              | suse-linux                |
+---------------------------------+---------------------------+

http://dev.mysql.com/doc/refman/5.1/en/show-variables.html

Upvotes: 1

user330315
user330315

Reputation:

is there any query I can run that will always output something sweet

This should do it

SELECT 'Something sweet'

Edit
If you don't want something sweet you can always use the built-in functions:

SELECT version()

for more ideas check out the manual:
http://dev.mysql.com/doc/refman/5.1/en/information-functions.html

Upvotes: 38

Related Questions