Ручное создание базы данных и пользователя и автоматизация скриптом bash
Для создания базы данных test
с пользователем test
и паролем test
в MySQL, выполните следующие шаги. Вы можете сделать это вручную или с помощью bash-скрипта.
Ручное создание базы данных и пользователя
- Подключитесь к MySQL:
sudo mysql -u root -p
- Создайте базу данных
test
:
CREATE DATABASE test;
- Создайте пользователя
test
с паролемtest
:
CREATE USER 'test'@'localhost' IDENTIFIED BY 'test';
- Предоставьте пользователю
test
все права на базу данныхtest
:
GRANT ALL PRIVILEGES ON test.* TO 'test'@'localhost';
- Примените изменения:
FLUSH PRIVILEGES;
- Выйдите из MySQL:
EXIT;
Автоматизация с помощью bash-скрипта
Создайте bash-скрипт для автоматизации процесса:
#!/bin/bash
# Параметры базы данных
DB_NAME="test"
DB_USER="test"
DB_PASS="test"
# Подключение к MySQL и выполнение команд
sudo mysql -u root <<EOF
CREATE DATABASE ${DB_NAME};
CREATE USER '${DB_USER}'@'localhost' IDENTIFIED BY '${DB_PASS}';
GRANT ALL PRIVILEGES ON ${DB_NAME}.* TO '${DB_USER}'@'localhost';
FLUSH PRIVILEGES;
EOF
# Проверка успешности выполнения
if [ $? -eq 0 ]; then
echo "База данных '${DB_NAME}' и пользователь '${DB_USER}' успешно созданы."
else
echo "Ошибка при создании базы данных или пользователя."
fi
Как использовать скрипт
- Сохраните скрипт в файл, например,
create_db.sh
. - Сделайте файл исполняемым:
chmod +x create_db.sh
- Запустите скрипт:
sudo ./create_db.sh
Проверка создания базы данных и пользователя
- Подключитесь к MySQL:
sudo mysql -u root -p
- Проверьте список баз данных:
SHOW DATABASES;
Вы должны увидеть базу данных test
.
- Проверьте список пользователей:
SELECT user, host FROM mysql.user;
Вы должны увидеть пользователя test
.
- Проверьте права пользователя
test
:
SHOW GRANTS FOR 'test'@'localhost';
Использование базы данных
Теперь вы можете подключиться к базе данных test
от имени пользователя test
:
mysql -u test -p test
Введите пароль test
, и вы получите доступ к базе данных.
Примечания
- Пароль
test
используется только для примера. В реальных проектах используйте сложные пароли. - Если вы хотите удалить базу данных и пользователя, выполните:
DROP DATABASE test;
DROP USER 'test'@'localhost';