この記事では、mysql の再インストールに関する知識を提供します。多くの人が mysql を再インストールする必要に遭遇したことがあると思います。root パスワードを忘れた場合はどうすればよいですか?異なるシステムをどのように運用すればよいでしょうか? mysql を再インストールするときに発生する問題とその解決方法を見てみましょう。
#最近問題が発生し、システムを再インストールしましたが、幸いなことに、mysql インストール ディレクトリはシステム ディスクにインストールされていませんでした。
長い話を手短に言うと、ストーリー全体をお話ししましょう。知識の増加
はは~多くの友人が私と同じ経験をしたと思います。
自分のパスワードでログインできないことがわかったら、気が狂いそうですか? mysql のインストールには多くの困難が伴い、データベースの問題で正しくインストールできなかった友人もいます ~ _~! その結果、その後のインストールは失敗しました。後でシステムを再インストールしました。
mysql8.0 Windows 環境を例として取り上げます:
インストールすると、mysql がデフォルトで C ドライブにインストールされます。インストール パスを指定した場合は、
次に、mysql がインストールされている場所を見つけます。
次に、まずサービスにこのコンピュータの mysql サービスがあるかどうかを確認します ==> 管理 ==> サービスとアプリケーション ==> サービス 以下に示すように、
mysql サービス (冗長なサービスがある場合)
sc.exe サービス名削除を使用して、不要なサービスを削除できます。削除後は、コンピューターを再起動する必要があります。
sc.exe delete MySql
サービスを使用することもできます。サービス mysqld.exe の場所を見つけるプロパティを使用して削除 (この種類の方法は、パスに問題がある場合は効果的ではない可能性があります)
元のファイルはまだ存在します。mysqld.exe を使用してサービスを削除できます。このパスの下から削除してください
実験してみましょう。#解凍されたバージョン (緑色) mysql# を構成する方法を体験してください。 ##. mysql がインストールされていない Windows で実行する必要があります。VMware 仮想化を使用できます。これは、Windows 環境をインストールすることを意味します。Windows のダウンロードは、インストールされているオペレーティング システムにあります。https://msdn.itelleyou.cn/すべての Windows システム用の ed2k リンクのイメージがあります。ダウンロードするだけです。 最初のステップとして、mysql 公式 Web サイトにアクセスして、MySQL の無料インストール バージョンの zip パッケージをダウンロードします。
次に、解凍し、解凍されたディレクトリに移動して、上記のファイルを確認します
2 番目のステップは、サービスをインストールして mysql を初期化することです
#解凍ディレクトリ:
対応するコマンド
最初の ドライブ文字:/
次に
cd で解凍したディレクトリに移動します#もちろん、Shift キーを押しながらマウスを右クリックすることもできます。そうすると、PowerShell ウィンドウが表示されます
#以下に示すように、
##正式スタート
インストール サービス この mysqld
は実際にはmysql サービス プログラムなので、mysqld を実行すると mysql サービスが実行されます。
.\mysqld.exe install
Initialize
上に示すように、データベース情報を保存するデータ フォルダーが表示されます。削除後、データベースは存在しなくなるため、再操作する必要があります.\mysqld.exe --initialize-insecure --user=mysqlログイン後にコピー还不能登录需要手动启动服务
第一次使用mysql 可以通过mysql.exe -u root -p直接登录进去,如果数据库里没有内容则删除data文件夹(手动关闭mysql服务才可以删除)
然后重新手动启动服务,重新初始化数据库如何登录进(第一次不需要密码) 将下面的123456改成你想要的密码即可
修改root密码(需要在mysql的bin目录下操作,如果配置了环境变量就不需要在bin目录下)
.\mysqld.exe -u root -pログイン後にコピーuse mysql;ログイン後にコピーログイン後にコピーログイン後にコピーALTER USER `root`@`localhost` IDENTIFIED BY '123456';ログイン後にコピーログイン後にコピー如果你只是想安装mysql那么上面已经安装完了
下面是忘记root密码,进入数据库修改的操作
第1步、关闭服务 也可以通过服务手动关闭(前面的截图),或者输入下面的命令
net stop mysqlログイン後にコピー第2步、(管理员身份)cd 到mysql主目录的bin目录下
.\mysqld.exe --console --skip-grant-tables --shared-memoryログイン後にコピー如图
需要另外开一个powershell窗口在bin目录下 按住Shift 鼠标右键会有一个在此处打开powershell窗口
然后登录进去(不需要输密码)直接回车即可登录进去
.\mysql.exe -u root -pログイン後にコピーログイン後にコピー启用mysql数据库
use mysql;ログイン後にコピーログイン後にコピーログイン後にコピー这里的 authentication_string不是密码后面操作才是真正修改密码的
update user set authentication_string='' where user='root';ログイン後にコピー上面只是为了运行root无密码登录,因为前面通过--skip-grant-tables选项导致修改密码的sql : ALTER USER `root`@`localhost` IDENTIFIED BY '123456';不能修改密码
退出登录
quitログイン後にコピー并且把那个执行命令带有 --skip-grant-tables 窗口关闭
然后启动mysql服务
net start mysqlログイン後にコピー按照正常的登录,不需要输root密码即可登录进去
.\mysql.exe -u root -pログイン後にコピーログイン後にコピーuse mysql;ログイン後にコピーログイン後にコピーログイン後にコピー修改root密码
ALTER USER `root`@`localhost` IDENTIFIED BY '123456';ログイン後にコピーログイン後にコピー在使用mysql的过程中是否有疑问?mysql的数据源到底放在了哪里?下面解答
mysql的数据源实际就在data文件夹内,我们进行一个实验尝试一下
使用目的:
证明mysql的数据源在data文件夹下,并且可以通过指定数据源路径,直接使用mysql找到原来的数据。即使现在电脑上没有安装mysql,然后通过复制原来mysql安装目录,来继续使用原来的mysql数据库和数据;
实验部分:
为了实验有效果我们创建一个数据库,这里干脆叫demo(如果你本身有数据库那么更好直接下面实验)
下面的使用即使没有安装过mysql数据库,也可以操作,只需mysql的主目录即可(数据data文件夹下)
第一步、关闭mysql服务 net stop mysql
第二步、新建my.ini文本文件,用来指定mysql位置和数据源位置
将mysql主目录下的data文件夹复制 到D:/盘根目录下 需要关闭服务才可以移动,否则会提示后台占用!
新建 my.ini 文本文件(干脆放在D:\mysql-8.0.18-winx64 即放在主目录下,5.5以前有这个文件后面都没有了)
写入如下的代码,指定数据库的主目录,数据源路径 以及端口
[mysqld] basedir = D:\mysql-8.0.18-winx64 datadir = D:\data port =3306ログイン後にコピー然通过mysqld启动mysql服务如下图
此时其实也可以通过第三方工具链接mysql 例如Navicat
下面通过命令连接,需要另开一个窗口
可以看到这里连上了mysql并且是原先的数据库!!
反例测试 一、
关闭前面所以powershell窗口
在前面的基础上 将my.ini删除,这样mysqld就找不到数据源,看下它提示了什么错误
这里因为没有my.ini告诉mysqld程序mysql主目录在那以及数据源在那,导致执行失败
现在通过.\mysql.exe -u root -p肯定连接不上因为mysql服务都没有启动起来
カウンター例テスト 2、
以下に示すように、my.ini の datadir を削除します
その後、前と同じことを試してください 現時点では、大量のエラーが報告されました。エラー プロンプトで特定のエラーを確認してください。その後、エラー プロンプトに従って変更するだけで済みます。例、最初のエラー プロンプト エラー メッセージ ファイルが見つかりませんエラー メッセージ ファイルは、正しい場所を見つけるために構成ファイルで指定する必要があるだけです[推奨:mysqlビデオチュートリアル]
以上がmysql の再インストールに関するすべての質問はここにありますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。