当我在local
命令中遇到load infile data
选项的规范时,我正在查看在dev.mysql的MySQL表中加载数据的规范。它表示如果未使用local
,则如果没有给出没有前导组件的文件名,则服务器会在默认数据库的数据库目录中查找该文件。谁能告诉我这里的默认数据库是什么意思,以及如何设置一个?它可以在MySQL本身内部设置,还是通过某些服务器指令设置?
答案 0 :(得分:1)
通常,默认数据库将在配置中的database
标题下的[client]
参数中指定(my.ini / my.cnf / etc),如下所示:
[client]
database = name_of_default_db
答案 1 :(得分:1)
默认数据库是您使用USE
子句调用的或在登录时指定的数据库。如果您使用SELECT * FROM tablename
而不是SELECT * FROM databasename.tablename
,则还使用默认数据库。
修改强>
只是为了明确这一点:默认数据库不是静态的 - 它仅在定义的会话上定义的时间点定义 - 例如例如PIT和启动load data infile
命令的会话。