name: Fix MySQL Auth Plugin on: workflow_dispatch: jobs: fix-mysql: runs-on: aliyun steps: - name: Install docker-cli run: | sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /etc/apk/repositories apk add --no-cache docker-cli mysql-client - name: Find and fix MySQL user run: | # Find the MySQL container MYSQL_CONTAINER=$(docker ps --filter "ancestor=mysql" --format "{{.Names}}" | head -1) if [ -z "$MYSQL_CONTAINER" ]; then MYSQL_CONTAINER=$(docker ps --filter "name=mysql" --format "{{.Names}}" | head -1) fi echo "MySQL container: $MYSQL_CONTAINER" if [ -n "$MYSQL_CONTAINER" ]; then # Execute the ALTER USER command docker exec "$MYSQL_CONTAINER" mysql -uroot -p"${MYSQL_ROOT_PASSWORD:-}" -e " ALTER USER 'qwenpaw'@'%' IDENTIFIED WITH caching_sha2_password BY 'cRs3XtJkCp4hhP3y'; FLUSH PRIVILEGES; SELECT user, host, plugin FROM mysql.user WHERE user='qwenpaw'; " 2>/dev/null || \ docker exec "$MYSQL_CONTAINER" mysql -uroot -e " ALTER USER 'qwenpaw'@'%' IDENTIFIED WITH caching_sha2_password BY 'cRs3XtJkCp4hhP3y'; FLUSH PRIVILEGES; SELECT user, host, plugin FROM mysql.user WHERE user='qwenpaw'; " 2>/dev/null || \ echo "ERROR: Could not connect to MySQL as root" else echo "ERROR: No MySQL container found" fi