この記事では主にWindows環境でのmysqlの解凍、インストール、バックアップ、復元について紹介しますので、必要な方は参考にしてください
システム環境はserver2012です
1 解凍版のmysqlをダウンロードし、インストールパッケージを解凍します。指定されたディレクトリにコピーします
2. 上記のディレクトリで、my-default.ini ファイルのコピーをコピーし、名前を my.ini に変更し、(必要に応じて) 次の変更を加えます。
3. 環境変数を追加し、C:Program Filesmysqlbin を変更します。 システムの環境変数 Path に追加します
4. コマンドラインで mysqld -install
を実行します
<img src="https://img.php.cn/upload/article/000/000/194/b2f31546b96637e8c86469c8ce6510de-1.png" alt="">
対応するアンインストール コマンド: mysqld --削除
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服务,就可以进行远程登陆了(如果不能远程,重启一下一般会解决)。
[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
11、忘记密码处理
如下图,打开配置文件my.ini 在mysqld下面添加 skip-grant-tables,保存退出,并重启mysql服务。
此后可以使用mysql -u root -p
,不使用密码进行登录,
之后进入数据库,执行 use mysql
命令切换到其中的mysql数据库。
然后执行如下命令
C:\Program Files\mysql\bin>net stop mysql MySQL 服务正在停止.. MySQL 服务已成功停止。 C:\Program Files\mysql\bin>net start mysql MySQL 服务正在启动 . MySQL 服务已经启动成功。
改好之后,重新修改my.ini这个文件,将加入的 skip-grant-tables
这行删除,保存退出,重启mysql服务。
值得注意的是,重新进入数据库可能会遇到1820错误,要求重置密码,如下图,这个时候,只需要执行命令 SET PASSWORD = PASSWORD('123');
即可
12、备份与还原
为了测试,创建一个数据库mvc
还原,语法如下:
update MySQL.user set authentication_string=password('123') where user='root' ; flush privileges;
下图的示例,还原mvc数据库
执行的命令是 mysql -u root -p mvc 4adf5213c63a8ec5e1a65128a512f700 フラッシュ権限;
を更新することをお勧めします🎜🎜 最後に、mysql サービスを再起動すると、リモートでログインできるようになります (リモート ログインができない場合は、通常は再起動すると問題が解決します)。 🎜🎜🎜🎜
mysql -u root -p [dbname] < backup.sql🎜11. パスワードを忘れた場合の処理🎜🎜 以下に示すように、設定ファイル my.ini を開き、mysqld の下に Skip-grant-tables を追加し、保存して終了し、mysql サービスを再起動します。 🎜🎜 🎜🎜
mysql -u を使用できますその後 root -p
を実行し、パスワードを使用せずにログインし、🎜🎜 の後にデータベースに入り、use mysql
コマンドを実行して mysql データベースに切り替えます。 🎜🎜次に、次のコマンドを実行します🎜🎜🎜🎜mysqldump -u root -p dbname table1 table2 ... > bakname.sql🎜 🎜 🎜 変更を加えた後、my.ini ファイルを再変更し、追加した行
Skip-grant-tables
を削除し、保存して終了し、mysql サービスを再起動します。 🎜🎜以下に示すように、データベースに再入力するときに 1820 エラーが発生し、パスワードのリセットが必要になる場合があることに注意してください。現時点では、コマンド SET PASSWORD = PASSWORD() を実行するだけです。 '123');
は利用可能です 🎜🎜 🎜🎜12. バックアップと復元🎜🎜 テストのために、データベース mvc を作成します🎜🎜🎜🎜 復元、構文は次のとおりです: 🎜🎜🎜🎜mysqldump -u root -p --databases dbname1 dbname2... > 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 中国語 Web サイトの他の関連記事を参照してください。