不登陆到MySQL执行SQL语句

通常来说,咱们在MySQL中执行查询都是进入到mysql中执行的,好比经过命令登陆:mysql

$ mysql -u root -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 7
Server version: 5.7.17-0ubuntu0.16.04.1 (Ubuntu)

Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

而后再敲命令作查询,那么能不能直接就在终端或者命令行执行查询呢,答案是确定的,只须要多加一个e参数便可:web

$ mysql -u root -p -e "SHOW DATABASES"
Enter password: +--------------------+
| Database | +--------------------+
| information_schema | | mysql | | performance_schema |
| sys | +--------------------+

再作一个SELECT语句看看:sql

$ mysql -u root -p -e "SELECT * FROM user \G" mysql
Enter password: 
*************************** 1. row ***************************
 Host: localhost
 User: root
 Select_priv: Y
 Insert_priv: Y
 Update_priv: Y
 Delete_priv: Y
 Create_priv: Y
 Drop_priv: Y
 Reload_priv: Y
 Shutdown_priv: Y
 Process_priv: Y
 File_priv: Y
 Grant_priv: Y
 References_priv: Y
 Index_priv: Y
 Alter_priv: Y
 Show_db_priv: Y
 Super_priv: Y
 Create_tmp_table_priv: Y
 Lock_tables_priv: Y
 Execute_priv: Y
 Repl_slave_priv: Y
 Repl_client_priv: Y
 Create_view_priv: Y
 Show_view_priv: Y
   Create_routine_priv: Y
 Alter_routine_priv: Y
 Create_user_priv: Y
 Event_priv: Y
 Trigger_priv: Y
Create_tablespace_priv: Y
 ssl_type: 
 ssl_cipher: 
 x509_issuer: 
 x509_subject: 
 max_questions: 0
 max_updates: 0
 max_connections: 0
  max_user_connections: 0
 plugin: mysql_native_password
 authentication_string: *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9
 password_expired: N
 password_last_changed: 2017-03-07 19:17:21
 password_lifetime: NULL
 account_locked: N
*************************** 2. row ***************************
 Host: localhost
 User: mysql.sys
 Select_priv: N
 Insert_priv: N
 Update_priv: N
 Delete_priv: N

....................

这样只不过是每次都得键入密码,有点繁琐,因此仍是进入到MySQL再执行查询吧。ubuntu