在Shell脚本中,可以使用以下步骤实现root切换到mysql用户并判断是否为主库:
#!/bin/bash
# 切换到mysql用户
sudo -u mysql bash <<EOF
# 检查是否为主库
is_master=$(mysql -e "SHOW VARIABLES LIKE 'read_only'" | awk '{print $2}')
if [[ "$is_master" == "OFF" ]]; then
echo "当前为主库"
else
echo "当前不是主库"
fi
EOF
这个脚本使用sudo -u mysql
命令将执行环境切换到mysql用户。然后,通过执行mysql -e "SHOW VARIABLES LIKE 'read_only'"
查询数据库的读写状态,并将结果保存在变量is_master
中。最后,根据is_master
的值判断是否为主库,并输出相应信息。
注意:请确保在执行该脚本时拥有足够的权限来切换到mysql用户和执行数据库查询操作。
内容由零声教学AI助手提供,问题来源于学员提问