文系Webエンジニアの技術メモとたまに旅のメモ

未経験文系エンジニアとして働いてます。アウトプットとして簡単に技術メモを残していきます。たまに旅関係のも趣味で残していこうと思ってます。

【Linux/MySQL】LinuxでMySQLログイン時に、Linuxコマンドを使用する方法

今回は、LinuxMySQLログイン時に、Linuxコマンドを使用する方法を紹介します。
今まで、いったんMySQLをログアウトして、Linuxコマンド打って再度ログインし直したり、
別ターミナルを開いてやったりとしていたので、その作業がなくなるので効率化できるかなと思います。

1.やりたい事

LinuxMySQLログイン中にLinuxコマンドを実行する

2.MySQLにログイン

ターミナル等でMySQLにログインをしましょう。

mysql -u {ユーザー名} -p
password: {パスワード}

ログインを完了させましょう。

3.Linuxコマンドを打つ

ログインした状態で通常のLinuxコマンドを実行します。

mysql> ls -ltr
    -> ;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'ls -ltr' at line 1

本来であれば、ファイルの一覧が表示されるはずですが、MySQLではそんなのできないよとエラーになります。
同じ「ls」コマンドの先頭に、「¥! 」」をつけて実行してみましょう。

mysql> ¥! ls -ltr
drwx------@   3 username  staff    96 11 29  2016 Applications
drwx------+  11 username  staff   352 10 12  2019 Movies
mysql>

このように、ログインする前の状態のパスで実行されます。
当たり前ですが、MySQLのコマンドは通常通り使用可能です。

mysql> use test
mysql> use {データベース名}

Database changed

下記のように行えばファイルの変更も可能です。

mysql> ¥! vi /var/www/test.text

このように、MySQLにログインをしていても、Linuxコマンドが使用可能なので、覚えておくと
使う機会はあるかもしれません。