mysql数据库创建链接_mySql - 链接,创建数据库,创建表

写在最前面:不同的MySql的版本,相应的sql命令语句不是完全一样的,我的数据库是版本是5.7.18.

0: 数据库相关基本概念介绍

数据库 vs 数据库管理系统

当我们说到数据库时,可能会讨论到MySql, Oracle, PostgreSQL. 实际上,更准确地说法是他们都是DBMS(Database Management System)。数据库的存储,检索,管理等所有的功能都是由DBMS来完成的。

服务端 vs 客户端

当我们使用数据库管理系统时,我们同时需要服务端和客户端。下面以一个查询为例。

客户端:我们想要查询数据的时候,需要在一个地方书写我们的sql语句,这个地方就是客户端。但是这个语句的执行,并不在客户端。客户端会把这个语句发送到服务端。

服务端:服务端接收到客户端发来的查询请求,执行查询,拿到结果,把结果返回给客户端。

服务端和客户端通过socket通信,具体是什么socket会根据不同的情况不一样,你也可以自己指定socket的类型。例如:--protocol=TCP

我们以MySql为例,当我们安装完MySql的时候,实际上安装了服务端。当然,会附赠一个服务端(MySql的命令行实用程序)。但是,有很多别的客户端供你选择,比如你可以选图形界面化的MySql客户端(MySql Workbench)。

1: 安装MySql

可以到MySql的官网下载安装包,也可以在命令行使用homebrew安装,这里不展开。

2: 启动MySql

mysql.server start

在从客户端链接到服务端之前,先要启动MySql

3: 链接到MySql

要使用MySql,首先要链接到MySql。

链接到一个数据库服务端需要提供以下4个信息:

1: 服务端所在的主机名(host),本地为localhost

2: 端口

3: 用户名

4: 密码(如果需要密码的话)

在命令行里需要执行以下命令:

mysql -h myhost -u myname -p

因为我是在自己的电脑上安装了MySql的服务端,所以下面以链接到本地MySql为例:

mysql h localhost -u root

如果链接成功,这时候会看到mysql命令行客户端:

mysql>

我是采用homebrew安装的,安装好之后默认root用户是没有密码的,所以这里没有使用-p。但是,我们可以自己给root这个用户名设置一个密码:

mysql> UPDATE mysql.user set authentication_string = PASSWORD('your_password') where User = 'root' AND Host = 'localhost';

mysql> FLUSH PRIVILEGES;

以上两个步骤,就成功地给root用户设置了一个密码。下次再重新使用root用户登陆的时候就必须带上密码了。

4: 显示数据库

mysql> show databases;

+--------------------+

| Database |

+--------------------+

| information_schema |

| mysql |

| performance_schema |

| sys |

+--------------------+

使用show databases;可以显示所有的数据库,这里显示了安装MySql之后默认的2个数据库。

注意:sql语句一定要以分号来表示一个命令的结束。

5: 创建数据库

mysql> create database crashcourse;

这样我们就成功地创建了一个名为crashcourse的数据库。现在这个数据库是空的。接下来我们就往数据库里面创建一张表。

6: 创建表

一张表一定是从属于某个数据库的,所以,在我门创建表之前,先选定我们即将要操作的数据库。可以通过命令:

use 数据库的名字;

其实在进行任何基于某个数据库的操作前,先选定一个数据库是非常正确和方便的事情。这里以我们刚刚创建好的crashcourse这个数据库为例:

mysql> use crashcourse;

创建一张表的命令为:

create table 表名称(列声明);

接下来我们以创建一张商品货物表为例:

Create table products (

product_id varchar(20) not null,

product_name varchar(20) not null,

product_price decimal(7, 2) not null,

vendor_id varchar(20) not null,

primary key(product_id)

);

7: 显示表

显示一个数据库的有哪些表,使用的sql命令是:

show tables from databse_name;

如果在这之前你已经选定了一个数据库(通过use database_name命令),则只需要:

show tables;

我们以我门刚刚创建的crashcourse数据库和products表为例:

mysql> show tables from crashcourse;

+-----------------------+

| Tables_in_crashcourse |

+-----------------------+

| products |

+-----------------------+

1 row in set (0.00 sec)

8: 显示列

mysql> show columns from products;

+---------------+--------------+------+-----+---------+-------+

| Field | Type | Null | Key | Default | Extra |

+---------------+--------------+------+-----+---------+-------+

| product_id | varchar(20) | NO | PRI | NULL | |

| product_name | varchar(20) | NO | | NULL | |

| product_price | decimal(7,2) | NO | | NULL | |

| vendor_id | varchar(20) | NO | | NULL | |

+---------------+--------------+------+-----+---------+-------+

4 rows in set (0.02 sec)

至此,我们就创建了

一个数据库:crashcourse,

在crashcourse里面创建了一张表:products,

给products表创建了4列:product_id,product_name, product_price, vendor_id.

但是,现在我么们的表里面还没有任何的数据,在下一篇文章里,我们来往表里面添加数据。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值