首页 热点专区 义务教育 高等教育 出国留学 考研考公
您的当前位置:首页正文

MySQL 基础命令学习

2024-12-14 来源:要发发教育

但是安装额外的软件毕竟很麻烦,而且不同的平台(Windows/OSX/Linux)安装体验也不一样,有的平台是没有可视化操作的软件的。所以学习使用 MySQL 的命令行操作也很
重要,因为这是随着MySQL软件发布的,所以只要安装了MySQL的机器都可以使用mysql命令。

前提


在MySQL的安装目录下的$MYSQLDIR/bin目录可以找到mysql命令,比如我的mac上是: /usr/local/mysql/bin/mysql ,为了方便使用,可以把这个命令加入到环境变量。
这个命令的主要用途是,可以通过控制台(终端)对数据库做一些操作,比如建表建库,做增删改查的操作。

登陆数据库 命令如下:

shell> mysql -h host -u user -p
Enter password: ********

-h host 是远程服务器的ip地址,-u user 是登陆数据库的用户名,需要注意的是 -p 后面并没有跟随密码(明文密码不安全),敲下这行命令之后,会提示输入密码。

如果数据就是安装在本机,那么不需要 -h host,比如:

shell> mysql -u user -p

退出数据库:

mysql> QUIT
Bye

在成功登陆数据库之后,所有的操作都必须以 “;” 号结尾的,否则不能执行,mysql会把回车理解成换行。(一定要注意“;”号结尾)

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| blogdb             |
| merchant           |
| mysql              |
| performance_schema |
| spotsdb            |
| sys                |
+--------------------+
7 rows in set (0.01 sec)

另外一点需要注意的是每次操作,后面都会跟着执行用时的时间戳 7 rows in set (0.01 sec) 这个时间并不是数据库真实的操作耗时,见:

These values are imprecise because they represent wall clock time (not CPU or machine time), and because they are affected by factors such as server load and network latency.

常用操作

  1. 查看当前数据库版本和当前时间

    mysql> SELECT VERSION(), CURRENT_DATE;
    +--------------+--------------+
    | VERSION()    | CURRENT_DATE |
    +--------------+--------------+
    | 5.7.1-m4-log | 2012-12-25   |
    +--------------+--------------+
    1 row in set (0.01 sec)
    mysql>
    
  2. 查看当前创建了哪些数据库

    mysql> SHOW DATABASES;
    +----------+
    | Database |
    +----------+
    | mysql    |
    | test     |
    | tmp      |
    +----------+
    
  3. 取用某个数据库(注意和QUIT命令一样,没有;号结尾)

    mysql> USE test
    Database changed
    
  4. 创建一个数据库

    mysql> CREATE DATABASE menagerie;
    
  5. 查看当前数据库下的所有的表

    mysql> SHOW TABLES;
    Empty set (0.00 sec)
    
  6. 创建一张表

    mysql> CREATE TABLE pet (name VARCHAR(20), owner VARCHAR(20),
        -> species VARCHAR(20), sex CHAR(1), birth DATE, death DATE);
    
  7. 查看一张表的结构

    mysql> DESCRIBE pet;
    +---------+-------------+------+-----+---------+-------+
    | Field   | Type        | Null | Key | Default | Extra |
    +---------+-------------+------+-----+---------+-------+
    | name    | varchar(20) | YES  |     | NULL    |       |
    | owner   | varchar(20) | YES  |     | NULL    |       |
    | species | varchar(20) | YES  |     | NULL    |       |
    | sex     | char(1)     | YES  |     | NULL    |       |
    | birth   | date        | YES  |     | NULL    |       |
    | death   | date        | YES  |     | NULL    |       |
    +---------+-------------+------+-----+---------+-------+
    
  8. batch模式

    shell> mysql < batch-file > mysql.out
    
显示全文