下面是通过 DBI 连接数据库的模板:
$dbh = DBI->connect($data_source, $username, $password)
or die $DBI::errstr;
以下是 $data_source 的描述方式:
dbi:DriverName:database=database_name;host=hostname;port=port
我的理解是host + port标识一个包含多个模式的 mysqld进程的实例,并且一个模式包含表。那么,在这个层次结构中,“数据库”在哪里呢?有时“数据库”一词似乎指的是 mysqld 实例,而其他时候似乎指的是模式。
更新 1:引用客户端在 TCP/IP 端口上连接并将 SQL 请求作为“数据库”发送的“服务器”(例如守护进程 - 不是硬件)是否正确?如果不是,它叫什么?