Win11 XAMPP Carch – Error: MySQL shutdown unexpectedly.

終於還是升級了 Win11,升級完成後慘案還是發生了,該來的還是會來。在我電腦中安裝用來開發用的 XAMPP 中的 MySQL 居然打不開了!!! 還好在 Win10 的時候有遇過一次,也感謝自己有記錄下來,依然有用,解決我 Win11 安裝後 MySQL 崩潰問題,也保住所有資料,本文也帶大家一步一步的做,如您也遇到一樣情況,可以參考本文,希望也能解決您的問題。

升級 Win11後,開啟 XAMPP 出現一堆錯誤的紅字,MySQL 也跟著掛了!!!!

檢視錯誤日誌

由 XAMPP 控制面板開啟 mysql error log (也看不是很懂)

修復錯誤

詳細原因其實也不是很清楚,網路上找到下列這篇文章,似乎是最簡單解決這個問題,本文是依照下列這篇文章進行問題排除,方法與原文有點差異,有興趣可參考原文

參考:xampp mysql and
參考:phpmyadmin dont work

備份資料檔案

如果您的資料已經有資料了,強烈建議備份下來,再來的動作可能會造成原有資料遺失,做危險操作時,花一些時間備份,養成好習慣

資料檔案預設目錄:C:\xampp\mysql\data

複製 backup 目錄中的檔案覆蓋於 data 目錄中

預設 backup 目錄:C:\xampp\mysql\backup

注意!! 若您 資料庫有使用 innodb 在複製 backup 中的檔案時,不可以複製 ibdata1 這個檔案,同時也確保 ibdata1 存在您的 data 目錄中,ibdata1 刪除了,將無法恢復您的資料庫

如果您已誤刪或覆蓋了 ibdata1 這檔案了,還有救

請參考此文章,恢復您的 innodb

參考:recover mysql database from ibdata1

重啟資料庫

覆蓋檔案完成,重啟 MySQL,太好了,沒有報錯,接著開啟 phpMyAdmin 驗證一下是否正常

Youtube 有網友將步驟製成影片,也可以參考這影片

上方步驟完成後,開啟 phpMyAdmin

噴了一些錯誤,但應該是密碼問題,剛覆蓋 backup 的檔案後,如果您的 phpMyAdmin 或其他程式都有設定資料庫登入密碼的話,需要重新設定密碼

MySQL 重設密碼

開啟 XAMPP 面板,按下右側的 Shell 按鈕

輸入下列這段指令更改資料庫 root 密碼

參考:Resetting MySQL Root Password with XAMPP on Localhost

成功開啟 phpMyAdmin

[……]

閱讀更多

XAMPP Win10 Carch – Error: MySQL shutdown unexpectedly.

不知道怎麼回事,今天打開我本機的開發環境的 XAMPP ,無法啟動 MySQL ,因次開始排除錯誤,也將這個過程紀錄,如您也遇到一樣情況,可以參考本文,希望也能解決您的問題

開啟 XAMPP 出現一堆錯誤的紅字

檢視錯誤日誌

由 XAMPP 控制面板開啟 mysql error log, 紅框這一段似乎是錯誤的原因

修復錯誤

詳細原因其實也不是很清楚,網路上找到下列這篇文章,似乎是最簡單解決這個問題,本文是依照下列這篇文章進行問題排除,不過有點不太一樣就是,有興趣可參考原文
xampp mysql and
phpmyadmin dont work

備份資料檔案

如果您的資料已經有資料了,強烈建議備份下來,再來的動作可能會造成原有資料遺失,做危險操作時,花一些時間備份,養成好習慣

資料檔案預設目錄:C:\xampp\mysql\data

複製 backup 目錄檔案覆蓋於 data 目錄

預設 backup 目錄:C:\xampp\mysql\backup

複製 backup 目錄檔案覆蓋於 data 目錄

注意!! 若您 資料庫有使用 innodb 在複製 backup 中的檔案時,不可以複製 ibdata1 這個檔案,同時也確保 ibdata1 存在您的 data 目錄中,ibdata1 刪除了,將無法恢復您的資料庫

如果您已誤刪了 ibdata1 這檔案了,還有救

請參考此文章,恢復您的 innodb

參考:recover mysql database from ibdata1

重啟資料庫

覆蓋檔案完成,重啟 MySQL,太好了,沒有報錯,接著開啟 phpMyAdmin 驗證一下是否正常

開啟 phpMyAdmin

噴了一些錯誤,但應該是密碼問題,剛覆蓋 backup 的檔案後,如果您的 phpMyAdmin 或其他程式都有設定資料庫登入密碼的話,需要重新設定密碼

MySQL 重設密碼

開啟 XAMPP 面板,按下右側的 Shell 按鈕

輸入下列這段指令更改資料庫 root 密碼

參考:Resetting MySQL Root Password with XAMPP on Localhost

成功開啟 phpMyAdmin

[……]

閱讀更多

三竹簡訊串接 – API 網址

三竹簡訊官方API文件,API Call 的網址如下:,

https://{三竹網域名稱}/b2c/mtk/SmSend

還以為真的是直接用他官網的網域,太天真了,弄半天結果不是,最後透過客服得知三竹簡訊目前帳號分為,個人帳號 (二站)、企業帳號 (三站),Call 的網址不同,call 的網址分別為下面兩個網址:

API 網址

企業帳號 (三站)
https://smsapi.mitake.com.tw/api/mtk/SmSend?

個人帳號 (二站)
http://smsb2c.mitake.com.tw/b2c/mtk/SmSend?

簡單測試API

[……]

閱讀更多

Windows 刪除已信任的https憑證、管理憑證

游標移到左下角按右鍵,是「右鍵」喔,選執行

輸入「certmgr.msc」按確定紐

開啟憑證管理的面板,左側是憑證類別,右邊是憑證,選取憑證後可以在上方控制列按下紅色叉叉的圖標刪除,也可以點擊滑鼠右鍵選刪除,來刪除已信任的憑證

參考資料:

[……]

閱讀更多

XAMPP設定Https開發環境,一鍵openssl自簽SSL憑證,配置 Apache Localhost

開發者通常都會在本地端電腦建立一個 localhost 的伺服器來模擬遠端生產環境或測試環境的狀態,進行相關程式碼的開發、測試,而 https 安全網站目前成為主流,為盡可能接近遠端伺服器,勢必本地端伺服器也需要安裝SSL憑證,筆者本地開發環境使用的是 XAMPP,所以本文主要是議介紹 XAMPP 的 https 配置,本文主要是「方便」開發為目地,而非「安全」為目地,介紹如何開發環境中設定SSL憑證,這僅適用於開發環境,切記 ! 不適用於正式生產環境。

本文 XAMPP版本為:XAMPP 7.4.8 ( Windows 64bit )

openssl 自簽憑證

本文使用的 XAMPP 版本已自帶 openssl 所以無需再另外安裝 openssl

準備工作

在 XAMPP 中的 Apache 根目錄中建立一個名為 ssl 子目錄,這目錄用來存放之後產生出來的證書檔案,目錄絕對路徑可能長得像下方這樣

複製 openssl 配置檔範例

openssl 自簽憑證需要一個配置檔,熱心網友 Adrian Suter 在 Github 上已經寫好配置檔範本,我們在剛建立的 ssl目錄中,建立一個名為 cert-template.conf 的檔案,並貼上下方範本網址中的代碼

複製 make-cert.bat 範例

熱心網友 Adrian Suter 在 Github 把 openssl 簽發憑證的流程寫成 Windows bat 檔案,簡化操作流程,克服指令障礙,非常佛心,如果配置檔配置正確,Enter,Enter,Enter一鍵就可以完成指定域的SSL憑證簽發,非常方便,開啟下方連結,並於上述的 ssl 目錄中建立一個名為 make-cert.bat 的檔案,並貼上下方網址中的代碼

執行make-cert.bat

執行 make-cert.bat 前,請確保 cert-template.conf 已同一目錄

執行 make-cert.bat,要求輸入要簽發的網域( 以 example.com 為例 )
輸入 example.com 按 Enter

再來會要求填入一些相關資料,不理它直接Enter、Enter、Enter下去就好,沒有輸入會帶預設值,因為本文介紹只是方便開發用的,不是正式環境使用,所以這些資訊並不必是真實的

當看到請按任意鍵繼續的文字,代表已經完成,下圖就是完成的截圖

此時 ssl 目錄就會多一個 example.com 的子目錄

開啟 example.com 目錄,裡面應該會有 server.crt 及 server.key 這兩個檔案,這就是憑證檔案,如果看到這兩個檔案,恭喜~憑證簽發完成! 這做法非常簡單

Windows 安裝憑證

openssl 自簽憑證沒有信任組織背書,仍會被瀏覽器標示為不安全,需要在 Windows 手動安裝信任此憑證,打開 server.crt 如下圖,按下「安裝憑證」按鈕

會跳出憑證匯入精靈,存放位置選「本機電腦」,下一步

選擇「將所有憑證放入以下存放區」,按憑證存放區的「瀏覽」按鈕

選擇「受信任的根憑證授權單位」,確定

下一步

按「完成」按鈕以完成憑證匯入

看到此彈跳視窗即匯入完成

設定 httpd-vhosts.conf

檔案位置:C:\xampp\apache\conf\extra\httpd-vhosts.conf
設定 XAMPP 的虛擬主機設定

設定 Hosts

檔案位置:C:\Windows\System32\drivers\etc
在檔案最下方加入下方這一行,將網域指向本機,流量就不出站了

完成設定

完成上述動作,再來就是要測試是否可以正常運行,在這之前先完成幾個步驟

  1. Ping 網域是否正確指向 127.0.0.1
  2. 重新啟動 XAMPP
  3. 暫時關閉防毒軟體及防火牆
  4. 清除 Windows DNS快取
  5. 清除瀏覽器 DNS 快取
  6. 瀏覽器關閉後重新開啟

最後打開瀏覽器,開啟所設定的網域,正常網址前方應該是不會出現「不安全」字樣,應該會出現鎖頭圖標,點擊網址前方鎖頭圖標,會顯示「已建立安全連線」的小視窗,如果有看到代表已經設定成功囉

如果沒看到也可以再嘗試一下多清除幾次瀏覽器的快取,或關閉瀏覽器再開啟,我發現瀏覽器這部分似乎有快取,有時設定成功卻仍顯示不安全,所以可以特別去注意這部分,若還是不行就重新操作一遍,或瀏覽文章下方參考連結參考原文

檢視或刪除已信任憑證

當我們完成階段性任務,不需要再使用開發環境某一個域的憑證時,可以參考下面這篇來刪除憑證

Windows 刪除已信任的https憑證、管理憑證

參考資料

https://shellcreeper.com/how-to-create-valid-ssl-in-localhost-for-xampp/
https://a091234765.pixnet.net/blog/post/403840004
https://gist.github.com/turtlepod/3b8d8d0eef29de019951aa9d9dcba546#file-cert-conf
https://www.cnblogs.com/kidsitcn/p/10561979.html
https://odan.github.io/2017/10/29/installing-an-ssl-certificate-under-apache-xampp.html

[……]

閱讀更多

Clear Chrome DNS Cache

快取這種東西對一般人而言,能加快網頁開啟速度何嘗不好,對於開發人員來說可能是場噩夢,開發時常遠端環境及本地端模擬環境中切換,DNS快取常令我們不知道我正在瀏覽的是遠端環境還是本地端環境,即便我已經清除了 Windows 快取,Ping IP 也顯示正確了IP了,結果還是瀏覽到遠端的網站,後來發現 Chrome 也有 DNS 快取,本篇教大家如何用最簡單的方式清除 Chrome DNS 快取。

在Chrome網址列貼上下方網址,如下圖,就會出現 Clear host cache 按鈕,按下去就對了

https://superuser.com/a/611712

[……]

閱讀更多

Google 掛了嗎?即時查詢Google服務狀態

雖然 Google 是大神,但難免也會掛、Google 服務包羅萬象,不管是生活或商務多多少少都會使用到 Google 提供的服務,常見的大概就是 Gmail、Google雲端硬碟、Google Map、Google 相簿或是YouTube, 如果當機起來還真的會造成許多不便,甚至哀號遍野

Google 掛掉拉

在寫這篇的同時,就是Google掛掉了,不管是Gmail、Youbube、Chrome、雲端硬碟通通都掛掉了,等待修復的時間有點閒來寫這篇吧。

如何判斷是 Google 掛了,還是自己的網路環境有問題呢?

除了跟地震一樣,上 Facebook 上看有沒有慘叫聲以外,Google 官方有提供一個所有產品目前服務狀態查詢的網頁,清楚標記各種產品目前是正常運行還是掛掉了,用燈號來表示目前的服務狀態、故障持續的時間,如此一來,如果您是基於 Google 提供延伸的服務,這樣才有辦法貼給客戶看,客戶才不會煩你煩到你掛掉

今天還蠻慘的耶,幾乎所有服務都掛掉了,也讓我有閒功夫在這邊打這篇文章,Google 實在是大到不能停,它當機真的算是天災了

Google 服務狀態面板

[……]

閱讀更多

Cloudflare 轉址設定兩步驟

基於種種原因,我們需要把某一個網址的所有流量轉換到另一個網址
例如:把 example.com 所有流量轉到 example.net
這時就需要用到轉址服務,好消息 Cloudflare 就可以做轉址囉
本文兩步驟教大家如何設定 Cloudflare 轉址

設定DNS紀錄

Cloudflare 頁面切換到 DNS

編輯 DNS 記錄

設定一筆 A 記錄將跟目錄指向到 Google Public DNS,IP 8.8.8.8

Cloudflare 根目錄在名稱欄位要輸入「@」

指向 Google Public DNS 只是因為該欄位必填,不知道要填什麼就填 Google 吧,當然也可以填其他 IP

編輯網頁規則

Cloudflare 轉址叫「網頁規則」,切換至「頁面規則」頁面

按下「建立頁面規則按鈕」,規則可使用萬用字元,可參考下列規則的寫法

轉址目標設定及方式可以參考下圖,按下儲存,可以測試了

這時候會把 example.com 的所有流量透過 301 轉址的方式全部轉到 example.net 囉

[……]

閱讀更多

WAMP Server change default Browser to Chrome

開啟 WAMP Sever 居然是用 IE 11 開啟,到底對不對阿,這都什麼時期的產物了,雖然直接用瀏覽器輸入網址瀏覽本地端網頁也是可行,但心裡就是有個疙瘩,來哥教你改成用你愛的瀏覽器開

修改設定檔

如果安裝路徑沒有修改的話,開啟下面這個檔案,如果安裝路徑有修改的話,自己去找這個檔案。

用你愛用的文字編輯器打開,照到該死的這一行

替換成瀏覽器執行檔位置

關閉 WAMP Server 重新開啟,SEE Chrome 出現了,開勳

[……]

閱讀更多