MySQL安装 忘记密码
MySQL解壓后:
1、以管理員身份運行cmd,切換到MySQL安裝目錄的bin目錄下
2、安裝MySQL服務:
mysqld -install mysql3308其中,mysql3308是可以自己取的名字,在后續安裝好后,啟動、關閉MySQL等命令中也要使用這個名稱,如果不想麻煩,可以直接取名mysql;取名主要是為了不和已經安裝了的MySQL產生沖突
3、初始化,執行my.ini文件的配置內容:
mysqld --initialize-insecure --user=mysqlmy.ini文件是放在MySQL安裝目錄下的配置文件:
[mysqld] #服務端的端口 port=3308 default-time-zone = '+8:00' #解壓根目錄 basedir=D:/_Development/mysql/mysql-8.0.28-winx64 #解壓根目錄/data datadir=D:/_Development/mysql/mysql-8.0.28-winx64/data default-storage-engine=INNODB #SQL模式的參數,通過這個參數可以設置檢驗SQL語句的嚴格程度 sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES############################################InnoDB參數配置 開始############################################ #索引和數據緩沖區大小,默認128M,一般設置物理內存的60%-70% innodb_buffer_pool_size = 512M#緩沖池實例個數,推薦設置4個或8個 innodb_buffer_pool_instances = 8 #關鍵參數,0代表大約每秒寫入到日志并同步到磁盤,數據庫故障會丟失1秒左右事務數據。 #1為每執行一條SQL后寫入到日志并同步到磁盤,I/O開銷大,執行完SQL要等待日志讀寫,效率低。 #2代表只把日志寫入到系統緩存區,再每秒同步到磁盤,效率很高,如果服務器故障,才會丟失事務數據。 #對數據安全性要求不是很高的推薦設置2,性能高,修改后效果明顯。 innodb_flush_log_at_trx_commit=2#默認是共享表空間,共享表空間idbdata文件不斷增大,影響一定的I/O性能。 #推薦開啟獨立表空間模式,每個表的索引和數據都存在自己獨立的表空間中,可以實現單表在不同數據庫中移動。 innodb_file_per_table = ON#日志緩沖區大小,默認8M,由于日志最長每秒鐘刷新一次,所以一般不用超過16M innodb_log_buffer_size = 16M ############################################InnoDB參數配置 結束############################################[mysql] #默認字符類型 default-character-set=utf8mb4############################################公共參數配置 開始############################################ #0.同時處理最大連接數,推薦設置最大連接數是上限連接數的80%左右 #max_connections=1200 #1.查詢排序時緩沖區大小,默認2m,只對order by和group by起作用,可增大此值為16M #sort_buffer_size = 16M#2.查詢緩存限制,默認1M,只有1M以下查詢結果才會被緩存,以免結果數據較大把緩存池覆蓋 #query_cache_limit = 10M#3.查看緩沖區大小,默認1M,用于緩存SELECT查詢結果,下一次有同樣SELECT查詢將直接從緩存池返回結果,可適當成倍增加此值 #query_cache_size = 160M#4.打開文件數限制,默認1024,如果show global status like 'open_files'查看的值等于或者大于open_files_limit值時,程序會無法連接數據庫或卡死 #open_files_limit = 8192 ############################################公共參數配置 結束############################################4、啟動MySQL服務
net start mysql33085、設置密碼
啟動MySQL之后,root用戶的密碼默認為空,需要設置密碼
mysqladmin -u root -p -P3308 password 新密碼 Enter password: 舊密碼在給MySQL取名為mysql3308之后,設置密碼需要加上"-P3308",這里是指my.ini里設置的port端口號是3308,如果端口號設置的不是3308就改成自己設置的端口
因為舊密碼默認為空,輸入舊密碼直接回車即可
6、關閉MySQL
net stop mysql3308忘記密碼:
1.使用管理員權限打開命令提示符,在命令行中輸入: net stop mysql
2.待mysql服務停止后,輸入: mysqld --shared-memory --skip-grant-tables ,
此時命令提示符窗口處于鎖定狀態,我們重新以管理員權限打開新的命令提示符窗口。
3.在新的命令提示符窗口輸入: mysql -uroot -p 后回車,提示輸入密碼時直接按回車進入。
4.輸入: use mysql;?
5.輸入: update user set authentication_string='' where user='root'; ,將
authentication_string置空。
注:在mysql8.0以上版本,
?? ?update mysql.user set password='newpassword' where user='root';
?? ?和
?? ?update mysql.user set password=PASSWORD('newpassword') where User='root';?
?? ?這兩條命令已經不起作用了
?
6.輸入: alter user 'root'@'localhost' identified by 'newpassword';?
? newpassword是要設的新密碼。
??
7.如果提示設置成功,則輸入: flush privileges; 。完成后Ctrl+Z退出mysql,使用新
密碼重新登錄即可。
注:此步驟切不可省略!!!
8.如果提示不成功,則關閉兩個命令提示符,重新打開一個管理員權限的命令提示符窗口,
輸入: mysql -uroot -p 后回車,輸入密碼時直接按回車進入(因為此時密碼已被置空)。
9.重復步驟4,步驟6,步驟7。
10.如果使用Navicat等可視化界面連接數據庫時連接不成功的情況,如錯誤信息:2059。
此時需要更改驗證方式,使用命令提示符登錄數據庫,輸入:
?ALTER USER'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'yourpassword';
?yourpassword是你想要設置的密碼。
11.提示成功后,重復步驟7,再次打開Navicat連接即可。
以上為mysql 8.0版本以上,忘記root密碼或使用root密碼登錄不成功的解決辦法!
總結
以上是生活随笔為你收集整理的MySQL安装 忘记密码的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: oracle官网免登录下载jdk8
- 下一篇: Mysql8.0 忘记密码怎么办