网站开发技术

记点笔记、 学点技术 欢迎交流建站技术。本站关注lamp技术

您尚未登录。

#1 2014-11-06 11:39:27

admin
管理员

mysql 数据库、 数据表的创建和删除

创建数据库用 create database db_name;

删除数据库用 drop database db_name;

创建数据表用 create table tb_name;

删除数据表用 drop table tb_name;


一个mysql 服务器中, 可以存在多个数据库, 一个数据库中可以存在多个 表。

创建了一个数据库在文件系统中做了什么?

做个测试首先创建一个数据库

mysql> create database www_ipbbs_net;
Query OK, 1 row affected (0.00 sec)

查看mysql的配置文件, 这里linxu centos 作为例子

cat /etc/my.cnf

[root@ipbbs ~]# cat /etc/my.cnf
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0

[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

可以看出, datadir 的目录是  /var/lib/mysql 

 ls /var/lib/mysql/
db1    ibdata1  ib_logfile0  ib_logfile1  mysql  mysql.sock  www_ipbbs_net

可以看到最后多了一个文件夹 www_ipbbs_net

# ls /var/lib/mysql/www_ipbbs_net
db.opt

仅仅有文件db.opt , 

所以可以这样说一个mysql的数据库,在文件系统中对应一个文件夹。


之后创建一个表看看, 发生了什么 

mysql> use www_ipbbs_net;
Database changed
mysql> create table tb001 (id int unsigned not null);
Query OK, 0 rows affected (0.00 sec)
[root@ipbbs ~]# ls  /var/lib/mysql/www_ipbbs_net
db.opt  tb001.frm  tb001.MYD  tb001.MYI

可以发现多了三个表, 一个 .frm , 一个 .myd 一个 。myi

.frm 表示表的结构

.MYD 表示表的记录

.MYI 表示表的索引

也就是说 mysql中一个表对应了三个文件。


删除示例 示例代码

mysql> use www_ipbbs_net;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql>
mysql> drop table tb001;
Query OK, 0 rows affected (0.00 sec)

mysql> drop database www_ipbbs_net;
Query OK, 0 rows affected (0.00 sec)



ipbbs.net

离线

页脚

Powered by FluxBB