MySQL/MariaDB: команды shell из консоли MySQL-клиента

Автор: | 19/03/2018
 

MySQL CLI позволяет быстро выполнять команды из консоли с bash или другим shell, загружать sql-скрипты и так далее.

Очень удобно, что бы не выходить из MySQL, если надо быстро выполнить команду.

Например – выполнить команды ls из консоли MySQL:

[simterm]

admin@ip-172-31-64-60:~$ mysql -u root -p
Enter password: 
Welcome to the MariaDB monitor.  Commands end with ; or \g.
...
MariaDB [(none)]> \! ls -l
total 157024
-rw-r--r-- 1 admin admin       16 Mar 19 06:29 execsql.sql
-rw-r--r-- 1 admin admin   321947 Mar  7 18:35 firefly_iii_prod_4_7_0-07-03-2018-bak.sql
-rw-r--r-- 1 admin admin   244963 Feb  9 09:32 firefly_iii_prod_bkp_09_02_2018.sql
-rw-r--r-- 1 root  root   1595408 Oct 13 11:00 get-pip.py

[/simterm]

Так же из консоли MySQL можно быстро перейти в консоль системы и обратно:

[simterm]

MariaDB [(none)]> \! bash
admin@ip-172-31-64-60:~$ pwd
/home/admin
admin@ip-172-31-64-60:~$ exit
MariaDB [(none)]>

[/simterm]

Или выпонить sql-скрипт:

[simterm]

MariaDB [(none)]> \! cat execsql.sql
show databases;
MariaDB [(none)]> \! mysql -u root -p < execsql.sql;
Enter password: 
Database
firefly_iii_dev
firefly_iii_prod
firefly_iii_prod_4_7_2
information_schema
mysql
performance_schema
rtfm_db1

[/simterm]

Готово.