#!/bin/sh -eu tool=$(readlink -e "${0%/*}/..") . "$tool"/local/lib.sh user="$1" sudo -u mysql mysql -u mysql --batch --verbose <<-EOF DROP PROCEDURE IF EXISTS mysql.create_user; DELIMITER // CREATE PROCEDURE mysql.create_user (username VARCHAR(16), hostname VARCHAR(60)) BEGIN IF NOT (EXISTS (SELECT User FROM mysql.user WHERE User = username AND Host = hostname LIMIT 1)) THEN SET @QUERY = CONCAT("CREATE USER ", username, "@", hostname, " IDENTIFIED WITH auth_socket"); PREPARE stmt FROM @QUERY; EXECUTE stmt; END IF; END; // CALL mysql.create_user('$user', 'localhost'); EOF sudo adduser "$user" mysql-data