简体   繁体   English

Mysql 通过 userdata 在 aws ec2 实例上安装

[英]Mysql installation on aws ec2 instance through userdata

I am giving this script as a userdata in an ec2 instance to install and setup mysql.我将此脚本作为 ec2 实例中的用户数据提供,以安装和设置 mysql。 The code runs fine manually but when given to ec2 instance as userdata it doesnot creates the database or user.该代码手动运行良好,但是当作为用户数据提供给 ec2 实例时,它不会创建数据库或用户。

#!/bin/bash
sudo yum -y update
sudo yum -y install aspell aspell-en httpd24 mysql mysql-server php56 php56-cli php56-gd php56-intl php56-mbstring php56-mysqlnd php56-opcache php56-pdo php56-soap php56-xml php56-xmlrpc php56-pspell --skip-broken
sudo yum list installed
sudo /sbin/chkconfig httpd on
sudo /sbin/chkconfig mysqld on  
sudo /sbin/service httpd start
sudo /sbin/service mysqld start
sudo mysqladmin -u root password '123a'
sudo mysql -u root -p123a
CREATE DATABASE db;
CREATE USER '1234'@'localhost' IDENTIFIED BY '123a';
GRANT FILE ON *.* TO '1234'@'localhost';
FLUSH PRIVILEGES;

Mysql version: 5.7.28 Mysql版本:5.7.28

Your grant command is not right, nowadays it is simply without password您的授权命令不正确,现在它只是没有密码

sudo mysql -u root -p123a -e  "CREATE DATABASE db DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;use db;create user 'db'@'localhost' identified by '123a';  grant all on testdb.* to 'db';GRANT ALL ON db.* TO ' db '@'localhost';GRANT ALL ON db.* TO ' db '@'%';FLUSH PRIVILEGES;"

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM