MySQL服务器管理之Shell管理(mysqlshell)
MySQL服务器管理有多种方法,比如图形界面工具、命令行客户端、本地管理程序以及Shell管理等。 Shell管理MySQL服务器比传统的x-windows方式可能更有效率,原因之一是它可以控制脚本并且远程管理,另一个原因是它可以在以管理MySQL服务器任务时将命令集成到大批量操作里。
MySQL管理图形界面工具可以供提供的一些功能,但需要更多的步骤完成同样的任务。相反,Shell管理MySQL服务器可以使用脚本自动完成相同的任务,节省时间和资源。例如,一个MySQL服务器管理的Shell脚本可以创建一个新的用户,赋予权限,设置初始密码,然后更新MySQL服务器设置,以便用户可以远程登录。以下是一个示例脚本,用来创建一个新的MySQL服务器用户:
#!/bin/bash
#Create MySQL user
#Set Variables
MUSER=”newuser”
MPASS=”PASSWORD”
#Add User
mysql -u root -p
CREATE USER ’${MUSER}’@’localhost’ IDENTIFIED BY ’${MPASS}’;
GRANT ALL PRIVILEGES ON *.* TO ’${MUSER}’@’localhost’;
FLUSH PRIVILEGES;
MYSQL_SCRIPT
echo “MySQL user Created!”
Shell脚本可以用来更新MySQL服务器的配置,例如添加新的服务器变量,更改缓存的大小或修改查询超时时间。例如,下面的脚本更新了查询超时时间:
#!/bin/bash
#Update Query timeout setting
#Set Variable
QUERY_TIMEOUT=300
mysql -u root -p
SET GLOBAL slow_query_log=’ON’;
SET GLOBAL long_query_time=${QUERY_TIMEOUT};
SET GLOBAL slow_query_log_file=’/var/log/mysql/slow_query.log’;
MYSQL_SCRIPT
echo “MySQL set Query timeout to ${QUERY_TIMEOUT} seconds”
Shell管理MySQL服务器可以提供许多方便,因为它可以帮助您快速地执行某些关键任务,而不必进行大量的图形界面操作。将脚本编写到一个文件并保存脚本可以使管理MySQL服务器更容易,并且可以在今后遇到相同的需求时重用。