Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to feed mysql queries from bash

I'm trying to make a bash script that creates a mysql user and database but I can't find a way to feed the sql into mysql, I'm trying with this format:

mysql < echo "query" 

But that is not working, see the example below:

mysql --host=localhost --user=user --password=password < echo "CREATE USER 'testuser'@'localhost' IDENTIFIED BY  'jakdJxct8W'; CREATE DATABASE IF NOT EXISTS 'testuser_dev' DEFAULT CHARACTER SET utf8 COLLATE utf8_bin; GRANT ALL PRIVILEGES ON  'testuser_dev' . * TO  'testuser'@'localhost'; CREATE DATABASE IF NOT EXISTS 'testuser_qa' DEFAULT CHARACTER SET utf8 COLLATE utf8_bin; GRANT ALL PRIVILEGES ON  'testuser_qa' . * TO  'testuser'@'localhost';" 

How to feed mysql with the queries?

like image 418
tirithen Avatar asked May 27 '11 10:05

tirithen


People also ask

How do I run a SQL query in bash?

Execute SQL query from the Linux command-lineThe password that is used to connect to SQL Database. Name of the Database that we need to connect. Name of the host where the Database is Installed. It is used to print results using a tab as the column separator, with each row on a new line.


1 Answers

Try like this:

echo "select 1" | mysql 
like image 126
Prince John Wesley Avatar answered Sep 28 '22 20:09

Prince John Wesley