>  기사  >  데이터 베이스  >  Windows 환경에서 MySQL의 압축해제, 설치, 백업, 복원에 대한 자세한 설명

Windows 환경에서 MySQL의 압축해제, 설치, 백업, 복원에 대한 자세한 설명

黄舟
黄舟원래의
2017-09-15 11:14:571332검색

이 글에서는 주로 Windows 환경에서 mysql의 압축해제, 설치, 백업, 복원에 대해 소개하고 있으니 필요하신 분들은 참고하시면 됩니다.

시스템 환경은 server2012

1 입니다. 지정된 디렉터리로

2 위 디렉터리에서 my-default.ini 파일의 복사본을 복사하고 이름을 my.ini로 바꾼 후 필요에 따라 다음과 같이 수정합니다.


[mysqld]
# 服务端的编码方式
character_set_server=utf8
# These are commonly set, remove the # and set as required.
#数据文件存放目录
basedir = C:\Program Files\mysql
#数据文件存放目录
datadir = C:\Program Files\mysql\data
port = 3306
# server_id = .....
# Remove leading # to set options mainly useful for reporting servers.
# The server defaults are faster for transactions and fast SELECTs.
# Adjust sizes as needed, experiment to find the optimal values.
# join_buffer_size = 128M
# sort_buffer_size = 2M
# read_rnd_buffer_size = 2M
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
# 允许最大连接数
max_connections=200

3. 환경 변수 추가 및 C:Program Filesmysqlbin 변경 시스템의 환경 변수 Path

4에 명령줄에서 mysqld -install 명령을 실행합니다mysqld -install

<img src="https://img.php.cn/upload/article/000/000/194/b2f31546b96637e8c86469c8ce6510de-1.png" alt="">

与之对应的卸载命令:mysqld --remove

5、mysql数据初始化

执行mysqld --initialize-insecure --user=mysql命令,创建一个空密码的root账户。注意,如果执行的是mysqld --initialize命令,则会创建一个随机密码用户。

 

初始化数据会会在安装目录下产生一个数据文件夹,如下图:

因为以上配置文件中的设置为datadir = C:Program Filesmysqldata,所以文件夹名称为data。

6、运行 net start mysql 启动服务,

 

7、设置密码。执行 mysqladmin -u root -p password 新密码 命令,为root用户设置密码。此处为123。

注意,Enter password 处输入的是原密码,此处为空。

 

8、登录

 9、查看数据库

 

10、设置远程登录

 查看user表,如下:

 数据库中执行命令update user set host = '%' where user = 'root';

 如下图:

 

最好刷新一下权限mysql> flush privileges;

最后重新启动mysql服务,就可以进行远程登陆了(如果不能远程,重启一下一般会解决)。


C:\Program Files\mysql\bin>net stop mysql
MySQL 服务正在停止..
MySQL 服务已成功停止。
C:\Program Files\mysql\bin>net start mysql
MySQL 服务正在启动 .
MySQL 服务已经启动成功。

11、忘记密码处理

如下图,打开配置文件my.ini 在mysqld下面添加 skip-grant-tables,保存退出,并重启mysql服务。

 

此后可以使用mysql -u root -p,不使用密码进行登录,

之后进入数据库,执行 use mysql 命令切换到其中的mysql数据库。

然后执行如下命令


update MySQL.user set authentication_string=password(&#39;123&#39;) where user=&#39;root&#39; ;
flush privileges;

改好之后,重新修改my.ini这个文件,将加入的 skip-grant-tables 这行删除,保存退出,重启mysql服务。

值得注意的是,重新进入数据库可能会遇到1820错误,要求重置密码,如下图,这个时候,只需要执行命令 SET PASSWORD = PASSWORD('123'); 即可 

 

12、备份与还原

 为了测试,创建一个数据库mvc

 还原,语法如下:


mysql -u root -p [dbname] < backup.sql

下图的示例,还原mvc数据库

执行的命令是 mysql -u root -p mvc  f91b6e5fd8c8bef446b0d3990d0afdce 플러시 권한;🎜🎜을 새로 고치는 것이 가장 좋습니다. 마지막으로 mysql 서비스를 다시 시작한 다음 원격으로 로그인할 수 있습니다( 원격 로그인이 불가능할 경우 다시 시작하면 일반적으로 문제가 해결됩니다. 🎜🎜🎜🎜

mysqldump -u root -p dbname table1 table2 ... > bakname.sql
🎜11. 비밀번호 처리를 잊어버렸습니다🎜🎜아래와 같이 구성 파일 my.ini를 열고 mysqld 아래에 Skip-grant-tables를 추가한 후 저장하고 종료한 후 mysql 서비스를 다시 시작합니다. 🎜🎜 🎜🎜mysql -u를 사용할 수 있습니다 이후 root -p, 비밀번호를 사용하지 않고 로그인하고 🎜🎜 뒤에 데이터베이스를 입력한 후 use mysql 명령을 실행하여 mysql 데이터베이스로 전환합니다. 🎜🎜그런 다음 다음 명령을 실행하세요🎜🎜🎜🎜
mysqldump -u root -p --databases dbname1 dbname2... > bakname.sql
🎜 🎜 🎜변경 후 my.ini 파일을 다시 수정하고 추가된 skip-grant-tables 줄을 삭제한 후 저장하고 종료한 후 mysql 서비스를 다시 시작하세요. 🎜🎜데이터베이스에 다시 진입할 때 아래와 같이 비밀번호를 재설정해야 하는 1820 오류가 발생할 수 있다는 점에 유의할 필요가 있습니다. 이때 SET PASSWORD = PASSWORD( 명령만 실행하면 됩니다. '123'); 사용 가능 🎜🎜 🎜🎜12. 백업 및 복원🎜🎜 테스트를 위해 데이터베이스 생성 mvc🎜🎜🎜🎜 복원, 구문은 다음과 같습니다. 🎜🎜🎜🎜
mysqldump -u root -p -all-databases > bakname.sql
🎜아래 예에서 mvc 데이터베이스 🎜🎜를 복원하는 명령은 mysql -u root -p mvc < e: mvc201709120200.sql🎜

 备份,语法如下:

备份一个数据库多个表


mysqldump -u root -p dbname table1 table2 ... > bakname.sql

备份多个数据库 加上了--databases选项,后面跟多个数据库


mysqldump -u root -p --databases dbname1 dbname2... > bakname.sql

备份所有数据库 


mysqldump -u root -p -all-databases > bakname.sql

 下图中的示例,只备份一个数据库mvc,同时指定字符集为utf8


mysqldump -u root -p --default-character-set=utf8 mvc >e:\mvcbak.sql

 

通常,可以使用一些工具进行数据备份与还原,例如Workbench

如果要定时将数据备份到其他服务器,可以使用mysqlbackupftp这个软件。

总结

위 내용은 Windows 환경에서 MySQL의 압축해제, 설치, 백업, 복원에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.