I have a need in my development environment to easily create/drop mySQL databases and users. Initially I was gonna implement a simple hacky HTTP GET method but was dissuaded by Ben Black from doing so. He suggested I write a proper RESTful interface. Without further ado I present to you dbrestadmin
It is my first foray into writing RESTful services so things may be rough around the edges. However it allows you to do following
manage multiple database servers
give user grants
view grants given to the user
view database privileges on a particular database given to a user
For example need to create a database called testdb on dbserver ID=0 use this cURL command
curl -X POST http://myhost/dbrestadmin/v1/databases/0/dbs/testdb
Create a user test2 with password test
curl -X POST "http://localhost:8000/dbrestadmin/v1/databases/0/users/test2@localhost" -d "password=test"
Give test2 user all privileges on testdb
curl -X POST "http://localhost:8000/dbrestadmin/databases/0/users/test2@'localhost'/grants" -d "grants=all privileges&database=testdb"
There is more. You can see all of the methods here
Improvements and constructive criticism welcome