|
|
- #!/bin/bash
-
- echo "####################################################################"
- echo "# docker_mariadb get_databases_from_customer script #"
- echo "# Dennis Buchhorn - bucde@b-eit.de #"
- echo "####################################################################"
- echo "# WARNING: password is plain text! #"
- #echo "# #"
- echo "####################################################################"
- echo ""
-
- MARIADB_CONTAINER_NAME=""
- MARIADB_ROOT_PASSWORD=""
-
- TMP=$(docker container ls --format "{{.Names}}")
-
- for ENTRY in $TMP; do
- CONTAINER_LIST+=($ENTRY)
- done
-
- if [[ ${#CONTAINER_LIST[@]} > 0 ]]; then
- echo "List of all running containers:"
-
- for I in ${!CONTAINER_LIST[@]}; do
- echo " Number [$I]: ${CONTAINER_LIST[$I]}"
- done
- else
- echo "No containers running!"
-
- exit 1
- fi
-
- read -p "Enter mariadb container number: " TMP
-
- MARIADB_CONTAINER_NAME="${CONTAINER_LIST[$TMP]}"
-
- read -p "Enter mariadb root password: " MARIADB_ROOT_PASSWORD
-
- rm -f tmp
- touch tmp
- echo "SELECT user FROM mysql.user;" >> tmp
-
- TMP=$(cat tmp | docker exec -i $MARIADB_CONTAINER_NAME mysql -uroot -p$MARIADB_ROOT_PASSWORD -BN)
-
- rm -f tmp
-
- for ENTRY in $TMP; do
- if ! [[ $ENTRY == "root" || $ENTRY == "mariadb.sys" ]]; then
- CUSTOMER_LIST+=($ENTRY)
- fi
- done
-
- if [[ ${CUSTOMER_LIST[@]} > 0 ]]; then
- echo "List of all customers:"
-
- for I in ${!CUSTOMER_LIST[@]}; do
- echo " Number [$I]: ${CUSTOMER_LIST[$I]}"
- done
- else
- echo "No customers!"
-
- exit 1
- fi
-
- read -p "Enter customer number: " TMP
-
- MARIADB_CUSTOMER_NAME="${CUSTOMER_LIST[$TMP]}"
-
- rm -f tmp
- touch tmp
- echo "SELECT db FROM mysql.db WHERE user='$MARIADB_CUSTOMER_NAME';" >> tmp
-
- TMP=$(cat tmp | docker exec -i $MARIADB_CONTAINER_NAME mysql -uroot -p$MARIADB_ROOT_PASSWORD -BN)
-
- rm -f tmp
-
- for ENTRY in $TMP; do
- DATABASE_LIST+=($ENTRY)
- done
-
- if [[ ${#DATABASE_LIST[@]} > 0 ]]; then
- echo "List of all databases from $MARIADB_CUSTOMER_NAME:"
-
- for I in ${!DATABASE_LIST[@]}; do
- echo " ${DATABASE_LIST[$I]}"
- done
- else
- echo "No databases!"
- fi
-
- rm -f tmp
-
- echo "Done!"
|