概念区分

数据库 vs 数据表

数据表包含于数据库

连接MySQL服务器

sudo /Applications/MAMP/Library/bin/mysql -u root -p

检测MySQL服务器是否启动

ps -ef | grep mysqld

管理MySQL的命令

use 数据库名

选择要操作的Mysql数据库,使用该命令后所有Mysql命令都只针对该数据库。

mysql> use mysql;
Database changed

show databases

列出 MySQL 数据库管理系统的数据库列表。

mysql> show databases

show tables

显示指定数据库的所有表,使用前需要use指定的数据库

mysql> show tables;
+---------------------------+
| Tables_in_mysql           |
+---------------------------+
| columns_priv              |
| db                        |
| event                     |
| func                      |
| general_log               |
| help_category             |
| help_keyword              |
| help_relation             |
| help_topic                |
| innodb_index_stats        |
| innodb_table_stats        |
| ndb_binlog_index          |
| plugin                    |
| proc                      |
| procs_priv                |
| proxies_priv              |
| servers                   |
| slave_master_info         |
| slave_relay_log_info      |
| slave_worker_info         |
| slow_log                  |
| tables_priv               |
| time_zone                 |
| time_zone_leap_second     |
| time_zone_name            |
| time_zone_transition      |
| time_zone_transition_type |
| user                      |
+---------------------------+
28 rows in set (0.01 sec)

show columns from 数据表

显示数据表的属性,属性类型,主键信息 ,是否为 NULL,默认值等其他信息。

mysql> show columns from plugin;
+-------+--------------+------+-----+---------+-------+
| Field | Type         | Null | Key | Default | Extra |
+-------+--------------+------+-----+---------+-------+
| name  | varchar(64)  | NO   | PRI |         |       |
| dl    | varchar(128) | NO   |     |         |       |
+-------+--------------+------+-----+---------+-------+
2 rows in set (0.01 sec)

SHOW INDEX FROM 数据表

显示数据表的详细索引信息,包括PRIMARY KEY(主键)。

查询数据表所有数据

select * from Users;