你的位置:首页 > 数据库

[数据库]Mysql启停以及恢复备份恢复数据库


1.mysql启停

进入cmd

 输入如下命令

  net stop mysql(自己起的mysql名称) -------停

  net strat mysql   --------------------------起

2.备份及恢复数据库

   我只采用备份C:\ProgramData\MySQL\MySQL Server 5.1\data路径下的数据库文件夹(例如worktime)

备份脚本如下:

color 0A --设置颜色
title 工时管理数据库备份(请不要关闭,你可以最小化)!
@echo off&setlocal enabledelayedexpansion
set sourdir="C:\ProgramData\MySQL\MySQL Server 5.1\data\worktime"
set targdir=D:\db_backup
set jt=%date:~0,4%%date:~5,2%%date:~8,2%
echo 当前日期为%jt%
if EXIST %targdir%\%jt% (
rd /s /q %targdir%\%jt%
md %targdir%\%jt%
xcopy /C/E/Y/I/Q %sourdir% %targdir%\%jt%\worktime
)ELSE (
md %targdir%\%jt%
xcopy /C/E/Y/I/Q %sourdir% %targdir%\%jt%\worktime
)

恢复:

在新的mysql下(最好两个版本一样),将worktime拷贝到上述路径下,然后重启mysql

此时可能会遇到本地连接时提示

ERROR 1130: Host '192.168.1.3' is not allowed to connect to this MySQL server

 解决方法:

前提是进入mysql,我的是root/system

1。 改表法。可能是你的帐号不允许从远程登陆,只能在localhost。这个时候只要在localhost的那台电脑,登入mysql后,更改 "mysql" 数据库里的 "user" 表里的 "host" 项,从"localhost"改称"%"

 

mysql -u root -pvmwaremysql>use mysql;mysql>update user set host = '%' where user = 'root';mysql>select host, user from user;---没尝试

 

2. 授权法。例如,你想myuser使用mypassword从任何主机连接到mysql服务器的话。

 

GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;---尝试好用

如果你想允许用户myuser从ip为192.168.1.3的主机连接到mysql服务器,并使用mypassword作为密码

GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.1.3' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;

GRANT ALL PRIVILEGES ON *.* TO 'root'@'10.10.40.54' IDENTIFIED BY '123456' WITH GRANT OPTION