您可以指定下列表中的参数为连接器/ ODBC DSN当配置:
用户在Windows上可以使用ODBC数据源管理员
设置这些参数;看到5.5.3部分,“Windows配置连接器/ ODBC DSN”关于如何做到这一点,看看表格5.1,“连接器/ ODBC DSN配置选项”信息的选择和他们corrrespond字段和复选框的图形用户界面ODBC数据源管理员
。在Unix和macOS,使用参数名称和值的关键字/值对DSN配置。此外,您可以设置这些参数内InConnectionString
论点的SQLDriverConnect ()
调用。
表5.1连接器/ ODBC DSN配置选项
参数 | GUI选项 | 默认值 | 评论 |
---|---|---|---|
用户 |
用户 | ODBC | 用户名用于连接MySQL。 |
uid |
用户 | ODBC | 的同义词用户 。在3.51.16补充道。 |
服务器 |
TCP / IP服务器 | 本地主机 |
MySQL服务器的主机名。 |
数据库 |
数据库 | - - - - - - | 默认的数据库。 |
选项 |
- - - - - - | 0 | 选项指定连接器/ ODBC是如何工作的。看到表格5.3,“连接器/ ODBC选项参数”和表5.4,“推荐连接器/ ODBC为不同的配置选项值”。 |
港口 |
港口 | 3306年 | 要使用的TCP / IP端口服务器 不是本地主机 。 |
initstmt |
最初的声明 | - - - - - - | 最初的声明。当连接到MySQL声明执行。在3.51版本中参数支撑 。司机只支持最初的语句被执行时的初始连接。 |
密码 |
密码 | - - - - - - | 的密码用户 账户服务器 。 |
松材线虫病 |
密码 | - - - - - - | 的同义词密码 。在3.51.16补充道。 |
套接字 |
- - - - - - | - - - - - - | Unix socket Windows文件或命名管道连接服务器 是本地主机 。 |
sslca |
SSL证书 | - - - - - - | 一个文件的路径与SSL信任ca的列表。在3.51.16补充道。 |
sslcapath |
SSL CA路径 | - - - - - - | 通往一个目录,其中包含SSL信任PEM格式的CA证书。在3.51.16补充道。 |
sslcert |
SSL证书 | - - - - - - | SSL证书文件的名称用于建立一个安全连接。在3.51.16补充道。 |
sslciph |
SSL密码 | - - - - - - | 的列表允许的SSL加密的密码。密码列表相同的格式openssl密码 命令。在3.51.16补充道。 |
sslkey |
SSL密钥 | - - - - - - | SSL密钥文件的名称用于建立一个安全连接。在3.51.16补充道。 |
rsakey |
RSA公钥 | - - - - - - | PEM文件的完整路径名称包含使用RSA公钥对MySQL的SHA256身份验证插件。5.3.4补充道。 |
sslverify |
验证SSL | 0 | 如果设置为1,SSL证书将被验证时使用MySQL连接。如果没有设置,那么默认行为是忽略SSL证书验证。
请注意
选择是连接器/ ODBC 5.3.7以来弃用。最好使用 |
字符集 |
字符集 | - - - - - - | 连接使用的字符集。在3.51.17补充道。 |
readtimeout |
- - - - - - | - - - - - - | 秒的超时尝试从服务器读取。每个尝试使用这个超时值和重试,如果有必要,所以总有效的超时值是选项值的3倍。你可以设置值,这样可以检测到失去联系早于TCP / IPClose_Wait_Timeout 10分钟的价值。此选项只适用于TCP / IP连接,MySQL 5.1.12之前,只有Windows。对应于MYSQL_OPT_READ_TIMEOUT 选择MySQL客户端库。在3.51.27补充道。 |
writetimeout |
- - - - - - | - - - - - - | 秒的超时尝试写信给服务器。每个尝试使用这个超时值net_retry_count 重试如果必要,所以总有效的超时值net_retry_count 倍的选项值。此选项只适用于TCP / IP连接,MySQL 5.1.12之前,只有Windows。对应于MYSQL_OPT_WRITE_TIMEOUT 选择MySQL客户端库。在3.51.27补充道。 |
互动 |
互动客户端 | 0 | 如果设置为1,CLIENT_INTERACTIVE 连接选项mysql-real-connect ()启用。在5.1.7补充道。 |
预取 |
预取从服务器_行 | 0 | 当设置为非零值 此选项只适用与单向游标。它不工作时选择参数 |
no_ssps |
- - - - - - | 0 | 在连接器/ ODBC 5.2后,默认情况下,服务器端使用准备好的语句。此选项设置为非零值时,预备语句是模拟在客户端,也就是行为如5.1和3.51。在5.2.0补充道。 |
can_handle_exp_pwd |
可以处理过期的密码 | 0 | 表明应用程序可以处理过期密码,由一个SQL暗示的状态08004年 (”服务器拒绝连接”)和一个本地错误代码ER_MUST_CHANGE_PASSWORD_LOGIN (1862)。连接”沙箱”,可以什么都不做除了问题设置密码 声明。建立一个连接在这种情况下,应用程序必须使用initstmt 连接选项在一开始,设置一个新密码或问题设置密码 连接后立即声明。一旦过期密码重置,取消限制连接。看到改变用户声明为MySQL服务器密码过期账户的详细信息。5.2.4补充道。 |
ENABLE_CLEARTEXT_PLUGIN |
使明文验证 | 0 | 设置为1使明文验证。添加5.1.13 5.2.5。 |
ENABLE_LOCAL_INFILE |
使数据加载操作 | 0 | DSN连接字符串,和GUI的选择。设置ENABLE_LOCAL_INFILE = 1,使数据加载操作。这切换MYSQL_OPT_LOCAL_INFILE mysql_options()选项。连接字符串覆盖DSN如果设置值。5.3.12和8.0.14补充道。 |
LOAD_DATA_LOCAL_DIR |
限制数据加载操作 | DSN连接字符串,和GUI的选择。LOAD_DATA_LOCAL_DIR设置为一个特定的目录中,如LOAD_DATA_LOCAL_DIR = / tmp,限制上传文件到一个特定的路径。这集MYSQL_OPT_LOAD_DATA_LOCAL_DIR mysql_options()选项。连接字符串覆盖DSN如果设置值。这个选项如果没有影响ENABLE_LOCAL_INFILE = 1。在8.0.22补充道。 | |
GET_SERVER_PUBLIC_KEY |
获取服务器的公钥 | 0 | 当连接到账户使用 选择添加连接器/ ODBC版本8.0.11和5.3.11。它需要连接器/ ODBC使用OpenSSL-based MySQL客户端库。如果连接器使用的MySQL客户端库/ ODBC与YaSSL建成,是GPL发行版的连接器/ ODBC 5.3,选项不函数和被忽略 |
NO_TLS_1_0 |
禁用TLS 1.0 | 0 | 不允许使用TLS 1.0连接加密。所有版本的TLS允许在默认情况下,这个选项排除使用1.0版本。在5.3.7补充道。TLS 1.0支持弃用v8.0.26和支持未来版本中移除。 |
NO_TLS_1_1 |
禁用TLS 1.1 | 0 | 不允许使用TLS 1.1连接加密。所有版本的TLS允许在默认情况下,此选项exludes使用1.1版本。在5.3.7补充道。TLS 1.1支持弃用v8.0.26和支持未来版本中移除。 |
NO_TLS_1_2 |
禁用TLS 1.2 | 0 | 不允许使用TLS 1.2连接加密。所有版本的TLS允许在默认情况下,此选项散发出使用1.2版本。在5.3.7补充道。 |
NO_TLS_1_3 |
禁用TLS 1.3 | 0 | 不允许使用TLS 1.3连接加密。所有版本的TLS允许在默认情况下,此选项exludes使用1.3版本。在8.0.26补充道。 |
SSL_ENFORCE |
执行SSL | 0 | 强制要求使用SSL连接服务器。看到表格5.2,“SSL_ENFORCE和DISABLE_SSL_DEFAULT联合效应”。在5.3.6补充道。
请注意
不建议使用这个选项,因为连接器/ ODBC 5.3.7 8.0.13和删除。最好使用 |
DISABLE_SSL_DEFAULT |
默认禁用SSL | 0 | 禁用默认要求使用SSL连接到服务器。当设置为”0”(默认),先用SSL连接器/ ODBC尝试连接,并落回未加密的连接,如果是不可能建立SSL连接。当设置为”1,”与SSL不是尝试连接,使用未加密的连接,除非SSL_ENFORCE 也将”1。”看到表格5.2,“SSL_ENFORCE和DISABLE_SSL_DEFAULT联合效应”。在5.3.6补充道。
请注意
选择弃用,因为连接器/ ODBC 5.3.7 8.0.13和删除。使用 |
SSLMODE |
SSL模式 | - - - - - - | 设置SSL的服务器连接方式。选项可以设置为下列值: 如果 在5.3.7补充道。这个选择将会重写的弃用 |
SSL配置参数也可以自动加载的my.ini
或my.cnf
文件。看到使用选项文件。
表5.2 SSL_ENFORCE和DISABLE_SSL_DEFAULT相结合
DISABLE_SSL_DEFAULT = 0 |
DISABLE_SSL_DEFAULT = 1 |
|
---|---|---|
SSL_ENFORCE = 0 |
(默认)与SSL是未遂;如果不可能,回到未加密的连接。 | 与SSL不是未遂;使用未加密的连接。 |
SSL_ENFORCE = 1 |
与SSL连接;抛出一个错误如果不能建立SSL连接。 | 与SSL连接;抛出一个错误如果不能建立SSL连接。DISABLE_SSL_DEFAULT = 1 是覆盖。 |
连接器/ ODBC的行为可以通过使用特殊的选项也修改参数中列出表格5.3,“连接器/ ODBC选项参数”连接字符串中指定,或通过图形用户界面对话框。所有的连接参数也有自己的数字常量值,可加起来的综合价值选项
参数指定这些选项。然而,数字选项
连接字符串的价值只能启用,但不是禁用参数上启用DSN,只能被指定选项参数使用连接字符串的文本名称。
而结合的数值选项
参数可以很容易地由添加选项的常量值,分解值来验证如果启用了特定的选项是很困难的。我们建议使用选项的参数名称连接字符串,而不是因为他们是自解释的。
表5.3连接器/ ODBC选项参数
参数名称 | GUI选项 | 恒定值 | 描述 |
---|---|---|---|
FOUND_ROWS |
返回匹配的行,而不是受影响的行 | 2 | 客户端不能处理当MySQL返回的真正价值影响的行。如果设置了这个标志,MySQL的回报”发现行”代替。你必须有MySQL 3.21.14或更新的工作。 |
BIG_PACKETS |
允许大结果集 | 8 | 不设置任何包限制结果和绑定参数。没有这个选项,将截断参数绑定255个字符。 |
NO_PROMPT |
连接时不提示 | 16 | 不提示问题即使司机想提示。 |
DYNAMIC_CURSOR |
启用动态游标 | 32 | 启用或禁用动态游标支持。 |
NO_SCHEMA |
忽略模式在列规范 | 64年 | 忽略使用的数据库名称db_name.tbl_name.col_name 。这个选项被连接器/ ODBC 8.0.13;使用NO_CATALOG代替。 |
NO_DEFAULT_CURSOR |
禁用driver-provided游标支持 | 128年 | 力使用ODBC管理器的游标(实验)。 |
NO_LOCALE |
不要使用setlocale () | 256年 | 禁用扩展获取(实验)。 |
PAD_SPACE |
垫CHAR和空间完整 | 512年 | 垫字符 列列的长度。 |
FULL_COLUMN_NAMES |
包括SQLDescribeCol表名() | 1024年 | SQLDescribeCol () 返回完全限定的列名。 |
COMPRESSED_PROTO |
使用压缩 | 2048年 | 使用压缩客户机/服务器协议。 |
IGNORE_SPACE |
忽略函数名后的空间 | 4096年 | 告诉服务器忽略空间之前,函数名之后”( ”(所需的PowerBuilder)。这使得所有函数名关键词。 |
NAMED_PIPE |
命名管道 | 8192年 | 与命名管道连接mysqld服务器运行在NT。 |
NO_BIGINT |
长整型数字列作为INT列 | 16384年 | 改变长整型数字 列INT 列(某些应用程序不能处理长整型数字 )。 |
NO_CATALOG |
禁用目录支持 | 32768年 | 部队的结果目录功能,例如SQLTables ,总是返回零 和驱动程序不支持报告目录。 |
USE_MYCNF |
读选项my.cnf |
65536年 | 读取参数(客户端) 和(odbc) 组my.cnf 。 |
安全 |
启用安全选项 | 131072年 | 添加一些额外的安全检查。 |
NO_TRANSACTIONS |
禁用事务支持 | 262144年 | 禁用事务。 |
LOG_QUERY |
%临时% \ myodbc.sql日志查询 | 524288年 | 启用查询日志c: \ myodbc.sql (/ tmp / myodbc.sql )文件。(只在调试模式下启用。) |
NO_CACHE |
不要缓存单向游标的结果 | 1048576 | 司机不要在本地缓存结果,而不是读取服务器(mysql_use_result () )。这只适用于单向游标。这个选项是非常重要的在处理大型表当你不希望司机来缓存整个结果集。 |
FORWARD_CURSOR |
力单向游标的使用 | 2097152 | 力的使用只能前进 指针类型。在情况下的应用程序设置默认静态/动态游标类型和一个希望司机使用noncache结果集,这个选项可以确保单向游标的行为。 |
AUTO_RECONNECT |
启用自动重新连接 | 4194304 | 使端的自动重连接功能。不要使用这个选项交易,因为一个端的自动重连接在一个不完整的事务可能会导致腐败。自动重新连接不会继承原始连接相同的设置和环境。在3.51.13补充道。 |
AUTO_IS_NULL |
使SQL_AUTO_IS_NULL | 8388608 | 当 当 因此,省略国旗禁用选项的兼容性和部队SQL标准的行为。 看到 |
ZERO_DATE_TO_MIN |
返回SQL_NULL_DATA零日期 | 16777216 | 零翻译日期(XXXX-00-00 支持ODBC)到最小日期值,XXXX-01-01 。这解决了一个问题,一些语句将不会工作,因为返回的日期和最低ODBC日期值是不相容的。在3.51.17补充道。 |
MIN_DATE_TO_ZERO |
结合最小为零日期 | 33554432 | 翻译的最低ODBC日期值(XXXX-01-01 )到MySQL支持的零日期格式(XXXX-00-00 )。这解决了一个问题,一些语句将不会工作,因为返回的日期和最低ODBC日期值是不相容的。在3.51.17补充道。 |
NO_DATE_OVERFLOW |
忽略数据溢出错误 | 0 | 继续查询执行而不是返回错误如果时间部分是失踪。服务器将忽略时间分量,结果都是一样的,好像他们是零。在5.3.8补充道。 |
MULTI_STATEMENTS |
允许多个语句 | 67108864 | 支持批处理语句。8.0.24,准备与多个语句查询了一个错误。parameter-less的直接执行语句准备使用SQLPrepare不支持()函数。多个语句只能通过执行SQLExecDirec () ODBC函数。 |
COLUMN_SIZE_S32 |
限制列签署了32位的范围大小 | 134217728 | 限制列大小签署了32位的值,以防止更大的问题列大小的应用程序不支持他们。这个选项是使用ADO应用程序时自动启用。在3.51.22补充道。 |
NO_BINARY_RESULT |
总处理二元函数结果字符数据 | 268435456 | 设置时,该选项禁用字符集63列空着org_table 。在3.51.26补充道。 |
DFLT_BIGINT_BIND_STR |
结合长整型数字参数为字符串 | 536870912 | 原因长整型数字 参数绑定作为字符串。Microsoft Access对待长整型数字 基于链表作为字符串。值被正确读取,但作为字符串。使用这个选项自动如果司机使用Microsoft Access。5.1.3补充道。 |
NO_INFORMATION_SCHEMA |
不要使用INFORMATION_SCHEMA为元数据 | 1073741824 | 告诉不使用目录功能INFORMATION_SCHEMA ,而是使用传统算法。这里的交换通常是速度的信息质量。使用INFORMATION_SCHEMA 通常是缓慢的,但获得的信息更加完整。在5.1.7补充道。 |
表5.4,“推荐连接器/ ODBC为不同的配置选项值”给出了一些建议和相应的参数设置选项
各种配置的值:
表5.4推荐不同的配置连接器/ ODBC选项值
配置 | 参数设置 | 选项值 |
---|---|---|
Microsoft Access, Visual Basic | FOUND_ROWS = 1; | 2 |
Microsoft Access(改善删除查询) | FOUND_ROWS = 1; DYNAMIC_CURSOR = 1; | 34 |
Microsoft SQL Server | COLUMN_SIZE_S32 = 1; | 134217728 |
有太多的行的大表 | COMPRESSED_PROTO = 1; | 2048年 |
Sybase PowerBuilder | IGNORE_SPACE = 1; FLAG_SAFE = 1; | 135168年 |
查询日志代(调试模式) | LOG_QUERY = 1; | 524288年 |
大型表与no - cache的结果 | NO_CACHE = 1; FORWARD_CURSOR = 1; | 3145728 |
应用程序运行全表“SELECT * FROM…“查询,但阅读只有少数(N 从结果的行) |
预取=N |
不适用 |