Shutdown mysql when exiting the environment

This commit is contained in:
coolneng 2020-11-29 19:03:13 +01:00
parent 6d4cc27acb
commit fccb4b7d2b
Signed by: coolneng
GPG Key ID: 9893DA236405AF57

19
env/mysql.nix vendored
View File

@ -2,19 +2,24 @@
with pkgs;
mkShell {
let
sql_file = "database/db.sql";
data_dir = "$(pwd)/.mysql";
socket = "${data_dir}/mysql.sock";
in mkShell {
buildInputs = [ mysql57 ];
shellHook = ''
pkill mysql
rm -rf .mysql && mkdir .mysql
trap "kill 0" EXIT
[ -d ${data_dir} ] || mkdir ${data_dir}
mysqld --datadir="$(pwd)/.mysql" --socket="$(pwd)/.mysql/mysql.sock" --initialize-insecure
mysqld --datadir="$(pwd)/.mysql" --socket="$(pwd)/.mysql/mysql.sock" --skip-networking &
mysqld --datadir="${data_dir}" --socket="${socket}" --initialize-insecure
mysqld --datadir="${data_dir}" --socket="${socket}" --skip-networking &
sleep 1
mysql --socket="$(pwd)/.mysql/mysql.sock" -u root < $(pwd)/database/db.sql
mysql --socket="${socket}" -u root < ${sql_file}
alias mysql='mysql --socket="$(pwd)/.mysql/mysql.sock" -u root'
alias mysql='mysql --socket="${socket}" -u root'
'';
}