MySQL在Windows平台上的使用限制如下:
进程内存
在Windows 32位平台上,默认情况下不可能在单个进程中使用超过2GB的RAM,包括MySQL。这是因为32位Windows上的物理地址限制是4GB, Windows内的默认设置是在内核(2GB)和用户/应用程序(2GB)之间分割虚拟地址空间。
一些版本的Windows有一个启动时间设置,通过减少内核应用程序来启用更大的应用程序。或者,如果要使用超过2GB的内存,请使用64位版本的Windows。
文件系统别名
当使用
MyISAM
表,您无法在另一个卷上的Windows链接中使用别名,然后链接回主MySQLdatadir
地点。该工具通常用于将数据和索引文件移动到RAID或其他快速解决方案中。
港口数量有限
Windows系统具有大约4,000个端口可用于客户端连接,并且在端口上的连接关闭后,在端口可重复使用之前需要两到四分钟。在客户端以高速速率连接和断开服务器断开的情况下,可以在封闭端口再次可用之前使用要使用的所有可用端口。如果发生这种情况,即使运行它,MySQL服务器也似乎无响应。也可以由机器上运行的其他应用程序使用端口,在这种情况下,MySQL可用的端口数量较低。
有关此问题的更多信息,请参见https://support.microsoft.com/kb/196271.
数据目录
和索引目录
的
数据目录
条款的创建表
语句在Windows for上支持InnoDB
仅用于表,如中所述创建外部表.为MyISAM
还有其他的存储引擎数据目录
和索引目录
条款为创建表
在Windows和任何其他平台上被忽略的非功能realpath ()
调用。不能删除另一个会话正在使用的数据库。
不区分大小写的名字
在Windows上,文件名不区分大小写,因此MySQL数据库和表名在Windows上也不区分大小写。唯一的限制是,在给定语句中必须使用相同的大小写指定数据库名和表名。看到标识符区分大小写.
目录和文件名
在Windows上,MySQL服务器只支持与当前ANSI代码页兼容的目录和文件名。例如,以下日文目录名在西方语言环境中不起作用(代码页1252):
datadir =“c:/私たちのプロジェクトの”
相同的限制适用于在SQL语句中引用的目录和文件名,例如数据文件路径名称
加载数据
.的
\
路径名分隔符路径名组件在Windows中以
\
字符,也是MySQL中的转义字符。如果你正在使用加载数据
或者选择……到输出文件
,使用unix风格的文件名/
人物:MySQL>将数据Infile'C:/tmp/skr.txt'加载到表skr中;MySQL>从SKR中选择*进入Outfile'c:/tmp/skr.txt';
或者,你必须加倍
\
性格:mysql> LOAD DATA INFILE 'C:\\tmp\ skr.txt' INTO TABLE skr;mysql> SELECT * INTO OUTFILE 'C:\\tmp\ skr.txt' FROM skr;
管道的问题
管道无法从Windows命令行提示符可靠地工作。如果管道包括角色
^ Z.
/CHAR (24)
, Windows认为它遇到了文件结束符并中止程序。这是一个主要的问题,当你尝试应用二进制日志如下:
C: \ > mysqlbinlogbinary_log_file| mysql——用户=根
如果您在应用日志时出现问题,并怀疑这是由于
^ Z.
/CHAR (24)
字符,你可以使用以下方法:C: \ > mysqlbinlogbinary_log_file——结果文件= / tmp / bin。sql C:\> mysql——user=root——execute "source /tmp/bin.sql"
后一个命令还可以用于可靠地读取可能包含二进制数据的任何SQL文件。