Nachdem ich MySQL so lange verwendet hatte, musste ich eines Tages plötzlich die MySQL-Konfigurationsdatei my.ini verwenden und stellte fest, dass es keine solche Datei gab und dass die Datei nicht versteckt war.
Im Allgemeinen ist MySQL in C:ProgrammeMySQLMySQL Server 5.7 installiert Früher habe ich das Installationspaket zum Erstellen von MySQL verwendet, daher gibt es keine my.ini-Datei. Diese Datei ist eine wichtige Konfigurationsdatei für MySQL. Wenn nicht, können Sie dies tun.
Ich habe dies auch getan, indem ich die Artikel anderer Leute gelesen habe.
Beachten Sie: Bevor Sie die Erstellung der my.ini-Datei vorbereiten, sichern Sie alle Daten in Ihrer vorherigen Datenbank in SQL, da bei diesem Vorgang die Datendatei gelöscht und der SQL-Dienst geschlossen wird. Daher werden alle bisherigen Daten gelöscht.
Der erste Schritt zur Wiederherstellung von my.ini:
Lokale Daten sichern, sichern. Verwenden Sie einfach Navicat, um den SQL-Dump zu erstellen.
Zweiter Schritt zum Wiederherstellen von my.ini:
Geben Sie cmd in das Bin-Verzeichnis von MySQL ein und drücken Sie die Eingabetaste.
My.ini wiederherstellen Schritt 3:
Befehlsfenster aufrufen:
My.ini wiederherstellen Schritt 4:
MySQL-Dienst löschen: sc delete Name.
So überprüfen Sie den Dienstnamen.
Es gibt viele Möglichkeiten. Die erste besteht darin, es direkt durch Fühlen zu finden.
Die zweite Methode besteht darin, die Portnummernsuche von MySQL zu verwenden.
3306 ist die Standard-Portnummer von MySQL. Win+R geben Sie cmd ein, um die Befehlszeile aufzurufen. Geben Sie den Befehl ein.
netstat -ano | findstr 3306
Nachdem Sie den Dienstnamen gefunden haben, geben Sie den Befehl ein:
#MySql57 ist mein Dienstname
sc delete MySql57
Nach dem Ausführen dieses Befehls wird der Dienst MySql57 aus dem Dienst gelöscht.
Wenn Sie den Screenshot-Befehl wirklich verwenden müssen, kann ich den Dienst neu konfigurieren, aber es sind viele Daten im Hauptdienst vorhanden. Wenn dies nicht ordnungsgemäß durchgeführt wird, wirkt sich dies auf den Hauptdienst aus, sodass ich auch zurückgehen muss die Daten hochladen. Der Betrieb der Slave-Datenbank ist derselbe wie der der Master-Datenbank. Nur der Name ist anders. Als nächstes werde ich dienen. Lassen Sie mich für Sie alle einen Screenshot machen. Der Dienstname des Slave-Dienstes lautet mysqls1
Sie müssen den Dienst stoppen, bevor Sie ihn löschen!
Wenn die zweite Situation auftritt, liegt ein Grund darin, dass der Dienstname falsch ist. Das andere ist, dass Sie es gelöscht haben. Wenn im zweiten Fall der Dienstname nicht im Dienst gefunden werden kann, bedeutet dies, dass Sie ihn gelöscht haben.
Schritt 5 zum Wiederherstellen von my.ini: Erstellen Sie eine neue Datei im MySQL-Stammverzeichnis und nennen Sie die Datei my.ini.
Schritt 6 zum Wiederherstellen von my.ini: Bearbeiten Sie den Inhalt in my.ini.
basedir und datadir Diese beiden Konfigurationen sollten entsprechend Ihrem tatsächlichen MySQL-Pfad bearbeitet werden.
# http://dev.mysql.com/doc/refman/5.6/en/server-configuration-defaults.html [client] default-character-set = utf8 [mysql] default-character-set = utf8 [mysqld] character-set-client-handshake = FALSE character-set-server = utf8 init_connect='SET NAMES utf8' # Remove leading # and set to the amount of RAM for the most important data # cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%. innodb_buffer_pool_size = 128M # Remove leading # to turn on a very important data integrity option: logging # changes to the binary log between backups. # log_bin # These are commonly set, remove the # and set as required. #注意这个地方要和你安装mysql的路径保持一致。 basedir = C:\Program Files\MySQL\MySQL Server 5.7 datadir = C:\Program Files\MySQL\MySQL Server 5.7\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 = 16M read_rnd_buffer_size = 16M sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES skip-grant-tables
mysqld --initialize-insecure --user=mysql
Dieser Fehler tritt auf, weil Sie die vorherige Datendatei nicht gelöscht haben.
Wenn das passiert, verwende ich normalerweise Zunder, um es direkt zu zerkleinern.
Wenn dieser Fehler auftritt, liegt das wahrscheinlich daran, dass diese beiden Konfigurationen in Ihrer my.ini falsch sind.
basedir = C:\Program Files\MySQL\MySQL Server 5.7-s1 datadir = C:\Program Files\MySQL\MySQL Server 5.7-s1\data
恢复my.ini第八步:重新生成mysql服务,同时绑定my.ini配置文件
输入一下命令。
mysqld --install "MySql57" --defaults-file="C:/Program Files/MySQL/MySQL Server 5.7/my.ini"
如果无法启动成功重复上面的步骤。不要怕大胆干反也损失不了啥!
重复了好几遍还是不行那大概是端口冲突了吧,把my.ini文件的3306随便改一个。
恢复my.ini第九步:进入mysql修改密码
登录mysql,输入此命令。因为服务刚刚删了所以不用输入密码。
mysql -u root -p
直接回车
进入mysql后,输入
use mysql;
然后再输入
update mysql.user set authentication_string=password("123456") where user="root";
然后刷新权限并退出
flush privileges; Quit
Das obige ist der detaillierte Inhalt vonSo lösen Sie das Problem, dass im installierten MySQL keine my.ini-Datei vorhanden ist. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!