【发布时间】:2013-02-15 09:52:32
【问题描述】:
下面是通过 DBI 连接 DB 的模板:
$dbh = DBI->connect($data_source, $username, $password)
or die $DBI::errstr;
下面是 $data_source 的描述方式:
dbi:DriverName:database=database_name;host=hostname;port=port
我的理解是 host + port 标识了一个包含多个 schemas 的 mysqld process 的实例,并且schema 包含 tables。那么,在这个层次结构中,“数据库”在哪里呢?有时“数据库”一词似乎指的是 mysqld 实例,而其他时候似乎指的是模式。
更新 1: 引用客户端在 TCP/IP 端口上连接并发送 SQL 的“服务器”(例如守护进程 -- 不是硬件)是否正确?请求作为“数据库”?如果不是,它叫什么?
【问题讨论】:
-
MySQL 将模式称为“数据库”。为什么?也许是因为如果 MySQL 真的做对了,它就不再是 MySQL。
-
我们公司每年大约3000万美元使用MySQL来管理一个直销合作数据库,其中有几张表包含1亿到35亿行之间的数据——是什么不正确?
-
哪里不对?这里列出了一些东西作为开始 - use.perl.org/use.perl.org/_Smylers/journal/34246.html
标签: database perl schema dbi mysql