1. 程式人生 > >MySQL---常用管理命令列

MySQL---常用管理命令列

  • 客戶端連線MySQL服務

    C:\WINDOWS\system32> mysql -uroot -p
    連線本地MySQL伺服器
    
    C:\WINDOWS\system32> mysql -uroot -p -h11.234.56.34
    連線目標MySQL伺服器

    •mysql –uroot –p 回車,錄入mysql的root使用者密碼

    -u代表mysql的使用者名稱,可以不加空格之間填寫連線使用者-uroot

    -p代表使用者名稱對應的密碼,可以直接在-p後面寫密碼,但是旁邊有人能看到

    mysql -uroot -poracle

    -p後面可以不寫密碼,直接回車後會提醒錄入密碼,這樣比較安全

    退出連線   mysql>quit;  或者 exit;

  • 檢視MySQL伺服器版本

mysql> select version();
+-----------+
| version() |
+-----------+
| 5.7.24    |
+-----------+
1 row in set (0.00 sec)
  • 檢視當前連線使用者

mysql> select user();
+----------------+
| user()         |
+----------------+
| [email protected]
| +----------------+ 1 row in set (0.00 sec)
  • 檢視當前伺服器日期和時間

mysql> select now();
+---------------------+
| now()               |
+---------------------+
| 2018-12-18 12:56:19 |
+---------------------+
1 row in set (0.00 sec)
  • 當前使用者可以訪問的資料庫

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
4 rows in set (0.00 sec)
  • 檢視“mysql”資料庫的表

mysql> show tables from mysql;
+---------------------------+
| Tables_in_mysql           |
+---------------------------+
| columns_priv              |
| db                        |
| engine_cost               |
| event                     |
| func                      |
 ...........................
| time_zone_name            |
| time_zone_transition      |
| time_zone_transition_type |
| user                      |
+---------------------------+
31 rows in set (0.00 sec)
  • 檢視當前使用的資料庫

mysql> select database();
+------------+
| database() |
+------------+
| NULL       |
+------------+
1 row in set (0.00 sec)
  • 檢視mysql庫的user表的列


mysql> desc mysql.user;
+------------------------+-----------------------------------+------+-----+-----------------------+-------+
| Field                  | Type                              | Null | Key | Default               | Extra |
+------------------------+-----------------------------------+------+-----+-----------------------+-------+
| Host                   | char(60)                          | NO   | PRI |                       |       |
| User                   | char(32)                          | NO   | PRI |    
| Repl_slave_priv        | enum('N','Y')                     | NO   |     | N                     |       |
| Repl_client_priv       | enum('N','Y')                     | NO   |     | N                     |       |
| Create_view_priv       | enum('N','Y')                     | NO   |     | N                     |       |
| Show_view_priv         | enum('N','Y')                     | NO   |     | N                     |       |
| Create_routine_priv    | enum('N','Y')                     | NO   |     | N                     |       |
| Alter_routine_priv     | enum('N','Y')                     | NO   |     | N                     |       |
| Create_user_priv       | enum('N','Y')                     | NO   |     | N                     |       |
| Event_priv             | enum('N','Y')                     | NO   |     | N                     |       |
| Trigger_priv           | enum('N','Y')                     | NO   |     | N                     |       |
| Create_tablespace_priv | enum('N','Y')                     | NO   |     | N                     |       |
| ssl_type               | enum('','ANY','X509','SPECIFIED') | NO   |     |                       |       |
| ssl_cipher             | blob                              | NO   |     | NULL                  |       |
| x509_issuer            | blob                              | NO   |     | NULL                  |       |
| x509_subject           | blob                              | NO   |     | NULL                  |       |
| max_questions          | int(11) unsigned                  | NO   |     | 0                     |       |
| max_updates            | int(11) unsigned                  | NO   |     | 0                     |       |
| max_connections        | int(11) unsigned                  | NO   |     | 0                     |       |
| max_user_connections   | int(11) unsigned                  | NO   |     | 0                     |       |
| plugin                 | char(64)                          | NO   |     | mysql_native_password |       |
| authentication_string  | text                              | YES  |     | NULL                  |       |
| password_expired       | enum('N','Y')                     | NO   |     | N                     |       |
| password_last_changed  | timestamp                         | YES  |     | NULL                  |       |
| password_lifetime      | smallint(5) unsigned              | YES  |     | NULL                  |       |
| account_locked         | enum('N','Y')                     | NO   |     | N                     |       |
+------------------------+-----------------------------------+------+-----+-----------------------+-------+
45 rows in set (0.00 sec)
  • 檢視mysql庫的user表的行

mysql> select * from mysql.user\G
*************************** 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
...........................................
         max_questions: 0
           max_updates: 0
       max_connections: 0
  max_user_connections: 0
                plugin: mysql_native_password
 authentication_string: *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE
      password_expired: N
 password_last_changed: 2018-12-18 12:23:27
     password_lifetime: NULL
        account_locked: Y
3 rows in set (0.00 sec)

          user表的列太多,導致折行,把列轉成行來看,這樣清晰一些

  • 資料庫、表、列存放位置

    
    mysql>  show variables like 'datadir';
    +---------------+----------------+
    | Variable_name | Value          |
    +---------------+----------------+
    | datadir       | D:\mysql\data\ |
    +---------------+----------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> show tables from mysql like 'user';
    +------------------------+
    | Tables_in_mysql (user) |
    +------------------------+
    | user                   |
    +------------------------+
    1 row in set (0.00 sec)
    
    mysql> select user,host,authentication_string from mysql.user;
    +---------------+-----------+-------------------------------------------+
    | user          | host      | authentication_string                     |
    +---------------+-----------+-------------------------------------------+
    | root          | localhost | *A4B6157319038724E3560894F7F932C8886EBFCF |
    | mysql.session | localhost | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE |
    | mysql.sys     | localhost | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE |
    +---------------+-----------+-------------------------------------------+
    3 rows in set (0.00 sec)
    
    mysql> desc mysql.user;
    +------------------------+-----------------------------------+------+-----+-----------------------+-------+
    | Field                  | Type                              | Null | Key | Default               | Extra |
    +------------------------+-----------------------------------+------+-----+-----------------------+-------+
    | Host                   | char(60)                          | NO   | PRI |                       |       |
    | User                   | char(32)                          | NO   | PRI |                       |       |
    | Select_priv            | enum('N','Y')                     | NO   |     | N                     |       |
    | Insert_priv            | enum('N','Y')                     | NO   |     | N 
    | max_updates            | int(11) unsigned                  | NO   |     | 0                     |       |
    | max_connections        | int(11) unsigned                  | NO   |     | 0                     |       |
    | max_user_connections   | int(11) unsigned                  | NO   |     | 0                     |       |
    | plugin                 | char(64)                          | NO   |     | mysql_native_password |       |
    | authentication_string  | text                              | YES  |     | NULL                  |       |
    | password_expired       | enum('N','Y')                     | NO   |     | N                     |       |
    | password_last_changed  | timestamp                         | YES  |     | NULL                  |       |
    | password_lifetime      | smallint(5) unsigned              | YES  |     | NULL                  |       |
    | account_locked         | enum('N','Y')                     | NO   |     | N                     |       |
    +------------------------+-----------------------------------+------+-----+-----------------------+-------+
    45 rows in set (0.00 sec)
    

    資料庫1(目錄1)

  • 表 (檔案)

  • 列1,列2,列3,……( 一個表至少有一列 )

  • 行1,行2,行3,……(一個表可以有0到N行)

  • 資料庫2(目錄2)

  • 表1

  • 表2

  • 表3

  • ……

  • 資料庫3(目錄3)

  • 表1

  • ……

 

  • 建立資料庫


mysql> create database test;
Query OK, 1 row affected (0.00 sec)
建立名字為‘test’的資料庫

mysql> create database test character set 'utf8' collate 'utf8_general_ci';
Query OK, 1 row affected (0.01 sec)
建立名為 “test”的資料庫,使用utf8編碼可以儲存中文

character set 
指定字串以何種編碼儲存。如果在庫中建表,沒有指定以何種編碼儲存,預設使用utf8編碼儲存表中的字串

collate
定義字串排序的順序和比較的方式

utf8_general_ci
字串按照UTF8編碼比較大小,不區分大小寫ci = case insensitive

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| demo               |
| mysql              |
| performance_schema |
| student            |
| sys                |
| test               |
+--------------------+
7 rows in set (0.00 sec)
顯示所有資料庫

 

刪除資料庫


mysql> drop database test;
Query OK, 0 rows affected (0.01 sec)
刪除檔名為‘test’的資料庫

  1. 目錄會被刪除
  2. 如果裡面有表文件也會被刪除
  3. 千萬不要刪除mysql,sys,performance_schema等這些系統資料庫

  4. 如果刪除了,mysql伺服器程式崩潰,切記危險!