#!/bin/sh -eux
db="$1"
-user="$2"
-sudo -u mysql mysql --batch <<-EOF
- DROP DATABASE IF EXISTS $db;
- CREATE DATABASE $db CHARACTER SET utf8 COLLATE utf8_general_ci;
- GRANT ALL PRIVILEGES ON $base.* TO '$user'@'localhost' IDENTIFIED WITH auth_socket;
- FLUSH PRIVILEGES;
+user="${2:-$1}"
+sudo -u mysql mysql --batch --verbose <<-EOF
+ CALL mysql.create_database('$db', '$user', 'localhost');
EOF
# DELETE FROM mysql.user WHERE user = 'root' AND host NOT IN ('localhost', '127.0.0.1', '::1');
sudo mysql -u root --batch --verbose <<-EOF
DELETE FROM mysql.user WHERE user = 'root' and plugin = '';
+
DROP PROCEDURE IF EXISTS mysql.create_user_mysql;
DELIMITER //
CREATE PROCEDURE mysql.create_user_mysql ()
UPDATE mysql.user SET grant_priv='Y',super_priv='Y' WHERE user='mysql';
DELETE FROM mysql.db WHERE user = '';
DELETE FROM mysql.user WHERE user = '';
+
DROP PROCEDURE IF EXISTS mysql.create_user;
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;
+ 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;
+ //
+
+ DROP PROCEDURE IF EXISTS mysql.create_database;
+ CREATE PROCEDURE mysql.create_database (dbname VARCHAR(16), username VARCHAR(16), hostname VARCHAR(60))
+ BEGIN
+ IF NOT (EXISTS (SELECT SCHEMA_NAME
+ FROM INFORMATION_SCHEMA.SCHEMATA
+ WHERE SCHEMA_NAME = dbname
+ LIMIT 1))
+ THEN
+ SET @QUERY = CONCAT("CREATE DATABASE ", dbname, " CHARACTER SET utf8 COLLATE utf8_general_ci");
+ PREPARE stmt FROM @QUERY;
+ EXECUTE stmt;
+ END IF;
+ SET @QUERY = CONCAT("GRANT ALL PRIVILEGES ON ", dbname, ".* TO ", username, "@", hostname);
+ PREPARE stmt FROM @QUERY;
+ EXECUTE stmt;
+ END;
//
+
FLUSH PRIVILEGES;
EOF
-false ${@:+$(printf -- '-or -name %s.conf\n' "$@")} \
-printf '%f\n')
do pool=${pool%\.conf}
- rule adduser "$pool"__php5 \
+ rule adduser php5_"$pool" \
--disabled-login \
--disabled-password \
--group \
env[TEMP] = /tmp
env[TMPDIR] = /tmp
env[TMP] = /tmp
- group = ${pool}__php5
+ group = php5_$pool
#listen = 127.0.0.1:9000
listen = /run/php5/fpm/$pool
#listen.allowed_clients = 127.0.0.1
rlimit_core = unlimited
rlimit_files = 131072
slowlog = /home/www/log/php5/fpm/$pool/slow.log
- user = ${pool}__php5
+ user = php5_$pool
$(cat "$tool"/etc/php5/fpm/pool.d/"$pool".conf)
EOF
done