MySQL, Fedora 20, and Devstack

Once again, the moving efforts of OpenStack and Fedora have diverged enough that devstack did not run for me on Fedora 20. Now, while this is something to file a bug about, I like to understand the issue to have a fix in place before I report it. Here are my notes.

Running on a F20 Cloud image. Did a yum groupinstall “Development Tools” before git clone devstack and then a simple localrc with

The failure looks like this:

+ recreate_database_mysql keystone utf8
+ local db=keystone
+ local charset=utf8
+ mysql -ufedora -pkeystone -h127.0.0.1 -e 'DROP DATABASE IF EXISTS keystone;'
ERROR 1045 (28000): Access denied for user 'fedora'@'localhost' (using password: YES)

Now, I run with the following value in localrc:

MYSQL_USER=fedora

So let me wipe the DB and try with the defaults.

The database is stored in:

/var/lib/mysql/

Configuration is stored in /etc/my.cnf which is really just a pointer to /etc/my.cnf.d/

Inside there:
client.cnf mysql-clients.cnf server.cnf

The only interesting thing in server.cnf

log-error=/var/log/mariadb/mariadb.log
pid-file=/var/run/mariadb/mariadb.pid

So configuration looks mainly to be a skeleton.

Looking in /var/lib/mysql/

aria_log.00000001 ibdata1 ib_logfile1 performance_schema
aria_log_control ib_logfile0 mysql test

sudo ls /var/lib/mysql/mysql/

Doesn’t show anything that looks like configuration options.

OK…wipe:

sudo yum -y erase `rpmquery -a | grep maria`
sudo rm /etc/my.cnf.rpmsave
sudo rm -rf /var/lib/mysql/

now running ./stack gets further:

+ /opt/stack/keystone/bin/keystone-manage db_sync

OK, that looks like a problem with keystone not pip-installing the SQL-A driver for MySQL:

sudo pip install MySQL-python

_mysql.c:44:23: fatal error: my_config.h: No such file or directory

#include “my_config.h”

Need the mysql development files….possibly an issue due to the switch over to mariadb
sudo yum -y install mysql-devel

Installs
mariadb-devel.x86_64 1:5.5.36-1.fc20

Trying the RPM version we get:

sudo yum -y install MySQL-python

Seems to have done it…

So it looks like the problem was an artifact of how I ran devstack, and that Running the mysql module in devstack is not enough to install the python and devel packages for MySQL.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.