我正在寻找脚本,1。备份所有MYSQL数据库每日一次与日期和时间2。所有数据库mysql数据库一致性检查。
尝试获得错误用法: mysqldump 选项数据库表格
@echo off
set current=%date:~10,4%%date:~4,2%%date:~7,2%
set filename="G:\MYSQL_Backup\Paintrax-DBs-%current%.sql"
::set filename2="G:\MYSQL_Backup\Paintrax-DBs-%current%.zip"
echo %filename%
cd "G:\MYSQL_Backup"
:: mysqldump -u root -p password --all-databases > G:\MYSQL_Backup\all_databases_2022_Dec.sql
:: mysqldump -u root -p password -port 9119 --all-databases > G:\MYSQL_Backup\all_databases_20200424.sql
"C:\Program Files\MySQL\MySQL Server 8.0\bin\mysqldump.exe" --defaults-file="C:\ProgramData\MySQL\MySQL Server 8.0\my.ini" --host=localhost --port=9119 -p password --result-file=%filename% --default-character-set=utf8 --user=root --protocol=tcp --routines --events --single-transaction=TRUE --add-drop-table --all-databases >logfile.txt
echo backup-finished
:: comment out
::if exist %filename% (
:: "C:\Program Files\7-Zip\7z.exe" a %filename2% %filename%
::echo zip-finished
:: del %filename%
::)
::if exist %filename2% (
:: copy %filename2% "\\x.x.x.x\MySQL Backups"
::echo copy-finished
::)我正在使用的版本:Windowsserver2019 mysql 8.0.31 for Win64 on x86_64 (MySQL )
谢谢。
发布于 2022-12-10 07:17:35
您有带有空格的-p password,但根据4.5.4 mysqldump的说法:
--password[=password], -p[password]如果给定,则--password=或-p与其后面的密码之间必须没有空格。
另一方面,不应在脚本中使用此参数,公开密码,而应将密码存储在选项文件中。
在命令行中指定密码应视为不安全。若要避免在命令行上提供密码,请使用选项文件。见第6.1.2.1节,“最终用户密码安全指南”。
即使脚本文件只能由运行它的用户读取,任何访问服务器的用户都可以在脚本运行时读取密码,例如
wmic process where caption="mysqldump.exe" get commandline
https://dba.stackexchange.com/questions/320800
复制相似问题