作者:zhanhailiang 日期:2013-01-15
第1种(主要是为了说明expect的使用场景,没什么实用意义)
一般情况下,我们想要进入MySQL命令模式总是需要按如下交互输入密码确认,才能进入命令行模式:
zhanhailiang@linux-06bq:~> mysql -u sl -p
Enter password:
其实我们可以使用expect编写脚本,来通过expect与shell交互通信来实现自动登录:
zhanhailiang@linux-06bq:~> cat mysql.sh
#!/usr/local/bin/expect
spawn /usr/local/services/mysql/bin/mysql -u sl -p
expect {
"assword" { send "sl\r" }
}
interact
其实这段脚本的意思就是说“执行/usr/local/services/mysql/bin/mysql -u sl -p,等待响应,若匹配assword,则发送sl(即MySQL用户登录密码),回车,模拟用户手工操作”。
编写完mysql.sh脚本后,赋予执行权限,然后就可以通过执行mysql.sh来自动登录MySQL命令行模式。
zhanhailiang@linux-06bq:~> chmod +x mysql.sh
zhanhailiang@linux-06bq:~> ./mysql.sh
spawn /usr/local/services/mysql/bin/mysql -u sl -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 12912
Server version: 5.5.14-log MySQL Community Server (GPL)
Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
注:expect拥有众多的参数及丰富的应用场景,有兴趣的同学请自行查看man手册或其它资料。
第2种
通过编辑/home/xxx/.bashrc文件,添加如下代码:
alias mysql="/usr/local/services/mysql/bin/mysql -u sl -psl"
接下来重新加载.bashrc文件
~$ source .bashrc
~$ mysql
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.5.20-log MySQL Community Server (GPL)
Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
第3种
通过修改/home/xxx/.my.cnf,添加登录所需的默认参数值:
1 [client]
2 host=localhost
3 user=sl
4 password=sl
这样也可实现自动登录MySQL:
~$ mysql
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 3
Server version: 5.5.20-log MySQL Community Server (GPL)
Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
参考资料:linux
expect, spawn用法小记
分享到:
相关推荐
在Windows操作系统中,MySQL数据库服务器的启动与停止通常可以通过图形界面的管理工具完成,但掌握通过命令行进行操作同样至关重要,尤其在自动化脚本编写、远程管理及故障排查等场景下。本文将详细介绍如何在...
MySQL 设计和命令行模式下的建立详解涉及到数据库的创建、数据表的设计以及命令行操作的基础知识。在设计数据库时,我们需要关注数据表的结构、数据类型的选取以及表间关系的建立。 1. 数据表的设计: 数据表是...
不进入mysql命令行就能导入SQL脚本的方法主要有以下几种: 1. **使用MySQL命令行工具的`-e`选项**:在命令行中,可以使用`mysql -u username -p -e "source /path/to/your/script.sql"`命令,这样就不必进入交互...
在这个场景中,Shell脚本用于启动网络、MySQL和Apache服务,并通过MySQL命令行工具查询一个特定表中的IP地址。 #### 详细解释: - **Shell脚本基础**: Shell脚本是一种用于自动化任务的脚本语言。它允许用户通过一...
2. **MySQL命令行工具**: 脚本可能使用`mysqladmin`或`mysql`命令行客户端来执行SQL操作,如修改root用户的密码。 3. **安全模式启动MySQL**: 为了绕过已知密码并允许修改,脚本可能使用`--skip-grant-tables`...
- 在命令提示符下输入`MySQL -h hostname -u username -p`,按Enter键后输入密码即可进入MySQL命令行模式。这里的`hostname`通常为`localhost`,`username`则根据实际情况填写。 - **基本命令介绍** - `CREATE ...
Linux命令行提供了一种高效、直接的方式来与操作系统交互,而Shell脚本则允许我们编写自动化任务,大大提高了工作效率。在这个“Linux命令行与shell脚本编程 - mysql数据库操作案例”中,我们将探讨如何在Linux环境...
安装完成后,通过命令行启动MySQL Shell,输入登录凭据连接到MySQL服务器,即可开始数据库管理工作。 总的来说,MySQL Shell是MySQL数据库管理员和开发人员的强大助手,提供了丰富的功能和便利的操作体验,尤其是在...
MySQL自动备份是数据库管理中的一个重要环节,它确保了在数据丢失或系统故障时能够恢复到一个已知的良好状态。这个“mysql自动备份.zip”压缩包包含了一些关键组件,用于实现MySQL数据库的自动化备份。让我们详细...
MySQL 5.7.17.msi 文件是 MySQL 5.7.17 版本在 Windows 平台上的一种安装程序,采用 Microsoft Installer (MSI) 格式。这种格式的好处在于它可以提供更为稳定的安装过程,并且能够更好地集成到 Windows 系统中。MSI ...
4. **命令行模式**:除了图形用户界面,Access2MySQL还支持命令行模式,适合于自动化脚本和无人值守的批量转换任务。 5. **安全性**:在迁移过程中,Access2MySQL会尊重原数据库的权限设置,确保迁移后的数据在新的...
在Java编程语言中,开发一个ATM(自动取款机)服务模拟系统是一个常见的实践项目,尤其对于初学者和在进行毕业设计或网络课程的学生来说。这个项目旨在帮助学生理解和应用面向对象编程、多线程、异常处理以及用户...
8.3. mysql:MySQL命令行工具 8.3.1. 选项 8.3.2. mysql命令 8.3.3. 怎样从文本文件执行SQL语句 8.3.4. mysql技巧 8.4. mysqlaccess:用于检查访问权限的客户端 8.5. mysqladmin:用于管理MySQL服务器的客户端 8.6. ...
3. 输入临时密码后进入MySQL命令行模式。 4. 执行以下SQL语句修改密码: ```sql ALTER USER 'root'@'localhost' IDENTIFIED BY 'Mysql97!'; ``` ##### 2.5 新增远程管理用户 为了方便远程管理MySQL数据库,可以...
### MySQL重装方法及遇到的问题解决 在日常的数据库管理工作中,我们经常需要对MySQL进行重装以解决一些棘手的问题。但是,在重装过程中往往会遇到各种各样的问题,比如删除不干净、权限问题等。本文将详细介绍如何...
##### MySQL命令行模式的设置 在Windows环境中,首先需要设置环境变量以便能够在任何目录下直接运行MySQL相关的命令。具体步骤如下: 1. 在“我的电脑”上右键点击“属性”。 2. 选择“高级系统设置”。 3. 在...
- 在MySQL命令行中切换至目标数据库: - `mysql> use 目标数据库名` - 示例:`mysql> use ygeshop` 4. **使用图形界面工具导出与导入**: - MySQL Workbench、phpMyAdmin等图形界面工具提供了更为直观的导出与...
8.3. mysql:MySQL命令行工具 8.3.1. 选项 8.3.2. mysql命令 8.3.3. 怎样从文本文件执行SQL语句 8.3.4. mysql技巧 8.4. mysqlaccess:用于检查访问权限的客户端 8.5. mysqladmin:用于管理MySQL服务器的客户端 ...