MySQL中的客户端选项(三)

默认情况下,LOAD DATA的LOCAL功能是否可用取决于MySQL客户端库在编译时是否启用了该功能。

  • 当只给出--local-infile(不带值)时,它启用LOCAL数据加载。
  • 当给出--local-infile=0时,它禁用LOCAL数据加载。
  • 当给出--local-infile=1时,它启用LOCAL数据加载(这与只给出--local-infile效果相同)。

如果LOCAL功能被禁用了(无论是通过默认设置还是通过--local-infile=0),但您仍然想从特定目录加载文件,可以使用--load-data-local-dir选项。这个选项允许您指定一个目录,只有这个目录中的文件才能被LOAD DATA LOCAL INFILE语句加载。

除了客户端设置外,LOAD DATA LOCAL INFILE的成功使用还要求MySQL服务器也允许本地数据加载。这通常在服务器的配置文件(如my.cnfmy.ini)的[mysqld]部分中设置,确保local-infile被设置为1

.mylogin.cnf 是一个用于存储 MySQL 登录路径(login paths)的配置文件。登录路径是一个选项组(option group),它包含用于指定连接到哪个 MySQL 服务器以及使用哪个账户进行身份验证的选项。

要创建或修改登录路径文件,请使用MySQL_config_editor实用程序。

用于客户端/服务器通信的缓冲区的最大值。默认值为16MB,最大值为1GB。

当使用--safe-updates选项时,该选项是为了防止你执行可能产生大量数据的操作,特别是那些没有WHERE子句或限制条件的DELETEUPDATE语句(默认值为1000000)。

启用命名的mysql命令。允许使用长格式命令,而不仅仅是短格式命令。例如,quit和\q都可以识别。使用skip-named-commands--​​​​skip-named-commands命名命令可以禁用命名命令。

TCP/IP和套接字通信的缓冲区大小(默认值为16KB。)

用于TCP/IP连接的网络命名空间。如果省略,连接将使用默认(全局)命名空间。

此选项是在MySQL 8.0.22中添加的。它仅在实现网络命名空间支持的平台上可用。

这与--skip auto-rehash具有相同的效果。

在发生错误时不发出蜂鸣声(beep sound)。

用于告诉工具不要读取任何默认选项文件。这通常包括在启动过程中会被考虑的默认配置文件,如 my.cnf(在Unix/Linux系统中)或 my.ini(在Windows系统中)。

如果程序启动失败是因为从某个选项文件中读取了未知选项,那么使用 --no-defaults 选项可以阻止程序读取这些默认选项文件。

例外情况是.mylogin.cnf文件在任何情况下都会被读取(如果存在的话)。这允许以比在命令行上更安全的方式指定密码,即使不使用默认值。要创建.mylogin.cnf,请使用mysql_config_editor实用程序。

忽略除了在默认数据库与命令行上指定的数据库相同时执行的语句之外的所有语句

基于 USE 语句来过滤 SQL 语句的方法是非常基础的,并且应该谨慎使用。

当使用 mysql -u username -p db_name 命令连接到 MySQL 并指定了一个数据库 db_name 时,MySQL 会首先执行一个隐式的 USE db_name; 语句,将当前数据库上下文设置为 db_name

之后,当 MySQL 读取并处理您的 SQL 输入时,如果遇到 USE 语句,它会检查该语句指定的数据库名是否与命令行上指定的数据库名相同。如果相同,MySQL 会接受并尝试执行 USE 语句之后的 SQL 语句(这些语句将在新的数据库上下文中执行)。如果不同,MySQL 会忽略 USE 语句之后的 SQL 语句,直到遇到下一个 USE 语句或输入的结束。

重要的是要注意,MySQL 在决定是否接受或拒绝 USE 语句之后的 SQL 语句时,并不考虑这些 SQL 语句的具体内容。它只关心 USE 语句指定的数据库名是否与命令行上指定的数据库名相匹配。

假设调用mysql来处理这组语句:

DELETE FROM db2.t2;
USE db2;
DROP TABLE db1.t1;
CREATE TABLE db1.t1 (i INT);
USE db1;
INSERT INTO t1 (i) VALUES(1);
CREATE TABLE db2.t1 (j INT);

如果命令行是mysql --force --one-database db1 ,以下是 MySQL 如何处理输入 SQL 语句的:

  • DELETE 语句:即使 DELETE 语句中引用的表位于不同的数据库,但因为命令行上指定了 db1 并且这是当前默认数据库,所以 DELETE 语句会在 db1 数据库中执行(假设表名在 db1 中是唯一的,或者它确实引用了 db1 中的表)。

  • DROP TABLE 和 CREATE TABLE 语句:如果这两个语句位于一个 USE db2; 语句之后(其中 db2 不是 db1),那么这些语句将尝试在 db2 数据库中执行,而不是 db1

  • INSERT 和 CREATE TABLE 语句:如果当前默认数据库是 db1(由于命令行选项),那么这些语句将在 db1 数据库中执行。即使 CREATE TABLE 语句尝试在不同于 db1 的数据库中创建表行。

使用给定的命令对查询输出进行分页。如果省略该命令,则默认pager为PAGER 环境变量的值。有效的pager有less、more、cat[>filename]等。此选项仅适用于Unix,并且仅适用于交互式模式。

使用 --skip-pager命令可以禁用分页。

用于连接到服务器的MySQL帐户的密码。密码值是可选的。如果没有给出,mysql会提示输入一个。如果给出,则--password=或-p与其后面的密码之间不得有空格。如果未指定密码选项,则默认情况下不发送密码。

在命令行上指定密码应该被认为是不安全的。为了避免在命令行中提供密码,请使用选项文件。

要明确指定不用密码,并且不需要mysql提示输入密码,请使用--skip-password选项。

--password1[=pass_val]

MySQL账户连接服务器时使用的多因素认证(multifactor authentication)的第一个因素的密码。这个密码值是可选的。如果没有给出,mysql会提示输入一个。如果给定,--password1=和它后面的密码之间不能有空格。如果没有指定密码选项,默认情况下不发送密码。

在命令行上指定密码应该被认为是不安全的。为了避免在命令行中提供密码,请使用选项文件。

要明确指出不用密码并且不需要mysql提示输入密码,请使用--skip-password1选项。

--password1和-password是同义词,--skip-password1与--skip-password也是同义词。

--password2[=pass_val]

MySQL账户连接服务器时使用的多因素认证(multifactor authentication)的第二个因素的密码

此选项类似于--password1。

--password3[=pass_val]

MySQL账户连接服务器时使用的多因素认证(multifactor authentication)的第三个因素的密码

此选项类似于--password1。

在Windows上,您可以使用命名管道(named pipe)连接到MySQL服务器。但是,这个选项仅当MySQL服务器启动时启用了named_pipe系统变量以支持命名管道连接时才适用。此外,进行连接的用户必须是named_pipe_full_access_group系统变量指定的Windows组的成员。

在Windows上,authentication_kerberos_client认证插件支持一个插件选项,它允许客户端用户在运行时设置两个可能的值:SSPIGSSAPI

这个客户端插件选项的默认值是SSPI(Security Support Provider Interface),它能够从Windows的内存缓存中获取凭据。这是Windows平台上Kerberos认证的一种常见方式。

另一方面,客户端用户也可以选择通过Windows上的MIT Kerberos库支持GSSAPI(Generic Security Service Application Program Interface)模式。GSSAPI能够获取之前使用kinit命令生成的缓存凭据。这对于那些需要与其他支持GSSAPI的系统(如Linux或UNIX系统)进行互操作的Windows环境可能是有用的。GSSAPI能够获取之前通过kinit命令生成的缓存凭据。

当使用 --default-auth 选项来指定一个认证插件,但 MySQL 客户端无法找到该插件时,您可能需要指定一个目录来让 MySQL 客户端在该目录中查找插件。这可以通过 --plugin-dir 选项来实现。

对于TCP/IP连接,要使用的端口号。

打印程序名称及其从选项文件中获得的所有选项。

将提示设置为指定的格式。默认为mysql>。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/360734.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

算法题--华为od机试考试(最大坐标值、寻找最富裕的小家庭、两个字符串间的最短路径问题)

目录 最大坐标值 题目描述 输入描述 输出描述 示例1 输入 输出 说明 解析 答案 寻找最富裕的小家庭 题目描述 输入描述 输出描述 示例1 输入 输出 说明 解析 答案 两个字符串间的最短路径问题 题目描述 ​编辑 输入描述 输出描述 示例1 输入 输出 …

discuz插件之优雅草超级列表互动增强v1.2版本更新

https://doc.youyacao.com/9/2142 v1.2更新 discuz插件之优雅草超级列表互动增强v1.2版本更新 [title]20220617 v1.2发布[/title] 增加了对php8的支持 增加了 对discuz3.5的支持

设计模式——桥接模式

桥接模式(Bridge) 在学习面向对象的过程中,可能会陷入一个误区,只要可以用,都用上继承,就好比因为有了新锤子,看什么东西都像是钉子了。   事实上,继承可能会带来一些麻烦。比如对象的继承关系是在编译阶…

ThreeJS-截屏下载pdf或者图片时白屏

JS-页面截图下载为pdf 关于如何下载为 pdf 在上面的这篇文章中有写,大家可以看下,下载图片代码在最下面 这时我们发现 three 部分是空白的如下: 这就多少有点尴尬了,这时我们习惯性的看下后台报错 是不是发现了惊喜,…

AI在肿瘤学临床决策中的应用:一种多模态方法

在临床肿瘤学领域,多模态人工智能(AI)系统通过解读各类医学数据,展现出提升临床决策的潜力。然而,这些模型在所有医学领域中的有效性尚未确定。本文介绍了一种新型的多模态医疗AI方法,该方法利用大型语言模…

突发!OpenAI停止不支持国家API,7月9日开始执行

6月25日凌晨,有部分开发者收到了OpenAI的信,“根据数据显示,你的组织有来自OpenAl目前不支持的地区的API流量。从7月9日起,将采取额外措施,停止来自不在OpenAI支持的国家、地区名单上的API使用。” 但这位网友表示&am…

WordPress如何删除前端评论中的网址字段?

前面跟大家分享的『WordPress插件Comment Link Remove and Other Comment Tools,删除评论网址字段』一文,通过安装插件可轻松删除前端评论中的网址字段,不过有些站长不喜欢安装插件,那么是否可以通过纯代码去掉网址字段呢&#xf…

Harbor本地仓库搭建004_Harbor配置管理功能_分布式分发功能_仓库管理_用户管理_垃圾清理_审查服务_项目定额---分布式云原生部署架构搭建00

然后我们再看一下配置管理,这里主要有个认证模式 这里我们是数据库,其实就是我们安装的postgresql 可以看到还有LDAP对吧,这个其实就是自己公司如果有 LDAP服务器,那么可以对接过来,那么,这个时候 再登录harbor的时候,就可以直接使用公司的,LDAP来管理,所有的用户了,其实就是…

Golang | Leetcode Golang题解之第173题二叉搜索树迭代器

题目: 题解: type BSTIterator struct {stack []*TreeNodecur *TreeNode }func Constructor(root *TreeNode) BSTIterator {return BSTIterator{cur: root} }func (it *BSTIterator) Next() int {for node : it.cur; node ! nil; node node.Left {it…

CLion2024 for Mac[po] C和C++的跨平台解代码编辑器

Mac分享吧 文章目录 效果一、下载软件二、开始安装1、双击运行软件(适合自己的M芯片版或Intel芯片版),将其从左侧拖入右侧文件夹中,等待安装完毕2、应用程序显示软件图标,表示安装成功3、打开访达,点击【文…

【Deep Learning】Self-Supervised Learning:自监督学习

自监督学习 本文基于清华大学《深度学习》第12节《Beyond Supervised Learning》的内容撰写,既是课堂笔记,亦是作者的一些理解。 在深度学习领域,传统的监督学习(Supervised Learning)的形式是给你输入 x x x和标签 y y y,你需要训…

Android开发系列(十)Jetpack Compose之Card

Card是一种常用的UI组件,用于显示一个具有卡片样式的容器。Card组件通常用于显示列表项、卡片式布局或任何需要显示边框和阴影的UI元素。 使用Card组件,您可以轻松地创建带有卡片效果的UI元素。以下是一些Card组件的常见属性和功能: elevati…

【机器学习】对大规模的文本数据进行多标签的分类处理

1. 引言 1.1. NLP研究的背景 随着人工智能技术的飞速发展,智能助手、聊天机器人和虚拟客服的需求正呈现出爆炸性增长。这些技术不仅为人们提供了极大的生活便利,如日程管理、信息查询和情感陪伴,还在工作场景中显著提高了效率。聊天机器人凭…

Kivy tutorial 004: Making the GUI do stuff, binding to events

Kivy tutorial 004: Making the GUI do stuff, binding to events – Kivy Blog Central themes: Events and Kivy properties 中心主题:事件和kivy属性 We left the last tutorial with a calculator app GUI with some nice automatic behaviour, but which doe…

【自然语言处理系列】探索NLP:使用Spacy进行分词、分句、词性标注和命名实体识别,并以《傲慢与偏见》与全球恐怖活动两个实例文本进行分析

本文深入探讨了scaPy库在文本分析和数据可视化方面的应用。首先,我们通过简单的文本处理任务,如分词和分句,来展示scaPy的基本功能。接着,我们利用scaPy的命名实体识别和词性标注功能,分析了Jane Austen的经典小说《傲…

vue3+ts:监听dom宽高变化函数

一、效果展示 二、代码 getSize.ts import { ref, Ref, watchEffect } from "vue";export const getWidth (domRef: Ref<HTMLElement | null>) > {const width ref<number>(0);const height ref<number>(0);const observer new ResizeObs…

google浏览器无法访问大端口的处理方式

属性的目标中添加后缀内容或者修改后台端口为常用端口&#xff0c;比如8080等。 “C:\Program Files\Google\Chrome\Application\chrome.exe” --explicitly-allowed-ports8888

Matlab基础语法:变量和数据类型,基本运算,矩阵和向量,常用函数,脚本文件

目录 一、变量和数据类型 二、基本运算 三、矩阵和向量 四、常用函数 五、脚本文件 六、总结 一、变量和数据类型 Matlab 支持多种数据类型&#xff0c;包括数值类型、字符类型和逻辑类型。掌握这些基本的变量和数据类型&#xff0c;是我们进行数学建模和计算的基础。 数…

【Linux基础IO】深入理解缓冲区

缓冲区在文件操作的过程中是比较重要的&#xff0c;理解缓冲区向文件刷新内容的原理可以更好的帮助我们更深层的理解操作系统内核对文件的操作。 FILE 因为IO相关函数与系统调用接口对应&#xff0c;并且库函数封装系统调用&#xff0c;所以本质上&#xff0c;访问文件都是通过…

强化学习专题:强化学习知识梳理(一)

2024/6/23&#xff1a; 前段时间有幸完成了大学期间的第一篇论文。在面试之前复盘一下关于自己论文中DQN的一些相关点。 浅谈主要区别&#xff08;在线 or 离线&#xff09; 首先&#xff0c;一切的开始是强化学习中时序差分方程&#xff0c;这体现了强化学习方法的优化策略。在…