Mysql

直接執行 MySQL 命令,而不是先進入控制台

  • August 18, 2014

PostgreSQL

在 PostgreSQL 中,可以postgres=#通過執行sudo -u postgres psql -c "\l"而不是先進入控制台並執行來執行命令而無需進入控制台\l。通過這樣做,psql 命令可以直接一步執行,而不是兩步。

MySQL

在 MySQL 中,sudo -u root mysql -c ""不像在 PSQL 中那樣被接受。因此,必須先通過執行進入控制台,sudo mysql -u root然後才能發出進一步的命令。

問題

是否可以直接執行 MySQL 命令(一步),而不是像在 PostgreSQL 中那樣先進入控制台並發出命令(兩步)?

看起來您想使用該-e選項的縮寫--execte,對嗎?

來自man mysql

   --execute=statement, -e statement

       Execute the statement and quit. The default output format is like
       that produced with --batch. See Section 4.2.3.1, “Using Options
       on the Command Line”, for some examples. With this option, mysql
       does not use the history file.

與 PSQL 不同,這裡-c簡稱--comments

   --comments, -c

       Whether to preserve comments in statements sent to the server.
       The default is --skip-comments (discard comments), enable with
       --comments (preserve comments).

引用自:https://unix.stackexchange.com/questions/150664