Take the 2-minute tour ×
Database Administrators Stack Exchange is a question and answer site for database professionals who wish to improve their database skills and learn from others in the community. It's 100% free, no registration required.

I am investigating a web site server (CentOS release 6.3) that runs the traditional lamp stack;

I am getting the following output my MySQL;

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| #mysql50#.config   |
| webtestdb          |
| mysql              |
| test               |
| websitedb          |
+--------------------+
6 rows in set (0.00 sec)

What is "#mysql50#.config"? Also, I can't select it;

mysql> use #mysql50#.config;
    -> ;
ERROR: 
USE must be followed by a database name
mysql> use \#mysql50\#.config;
No connection. Trying to reconnect...
Connection id:    1707
Current database: *** NONE ***

ERROR 1049 (42000): Unknown database 'mysql50.config'
mysql> use `#mysql50\#.config`;
ERROR 1102 (42000): Incorrect database name '#mysql50#.config'

Does this resemble some sort of crashed database, or a temporary database from a previous import or export than has been left behind by mistake?

mysql> SHOW VARIABLES LIKE "%version%";
+-------------------------+---------------------+
| Variable_name           | Value               |
+-------------------------+---------------------+
| protocol_version        | 10                  |
| version                 | 5.1.67-log          |
| version_comment         | Source distribution |
| version_compile_machine | x86_64              |
| version_compile_os      | redhat-linux-gnu    |
+-------------------------+---------------------+
5 rows in set (0.00 sec)
share|improve this question

3 Answers 3

up vote 1 down vote accepted

This is nothing but a folder/file in database directory.

The default location for data directory is /var/lib/mysql on ubuntu.Go to that location(datadir) and find what is there in that folder if it not your database please move that to some another place.

If you need to find the location of data directory issue command on MySQL shell

SHOW VARIABLES LIKE 'datadir';
+---------------+-----------------+
| Variable_name | Value           |
+---------------+-----------------+
| datadir       | /db-data/mysql/ |
+---------------+-----------------+
1 row in set (0.00 sec)

Which will give you the location of data directory

share|improve this answer

OK, so it seems that his has occurred because someone has left some files (one called conf) in the MySQL user's home directory. Removing them has removed this weird database.

share|improve this answer

This can also occur when the folder name contains a . when copied or renamed on the filesystem:

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| ...                |
| hashvb             |
| hashvb.bak         |
| hashvb2            |
| hashvb3            |
| ...                |
+--------------------+
4+ rows in set (0.01 sec)

mysql> use hashvb
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> use hashvb.bak
ERROR 1102 (42000): Incorrect database name 'hashvb.bak'
mysql> use `hashvb.bak`
ERROR 1102 (42000): Incorrect database name 'hashvb.bak'
mysql>

After renaming it on the file system to not include the ., mysql can use it as normal.

share|improve this answer
    
    
@Naktibalda That doesn't help when the folder was created outside of mysql which is where my answer is targetted. In my case, I was also running 5.0 which flatly refuses to use any database name with a . in it. –  Deanna Jul 16 at 11:27

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.