Tag: MariaDB
LAMP 是 Linux + Apache + MySQL + PHP 的縮寫, 但從 RHEL / CentOS 7 開始已經不會內置 MySQL, 改為使用 MariaDB, MariaDB 使用上與 MySQL 相同, 舊有的 MySQL 資料庫也可以直接升級使用, 這裡也會示範在 Rocky Linux …
MySQL 在 where 後面使用 IN 及 NOT IN 語法, 可以搜索跟一系統數值是否匹配, 支援 SELECT, UPDATE 及 DELETE, 而不用逐一用 OR 連接。 MySQL IN 例如要找出 member_id 是 10, 20 及 30 的會員資料, 用 …
RHEL 及 CentOS 7 預設的 MariaDB 版本是仍然停留在 5.5。MariaDB 10 是以 MySQL 5.5 為基礎, 加上移植自 MySQL 5.6 的功能和自行開發的新功能。 以下是在 CentOS 7 升級到 MariaDB 10.5, 以及將舊有資料轉移的步驟: 首先確認目前安裝的 MariaDB 版本, 如果是透過預設的 YUM …
LAMP 是 Linux + Apache + MySQL + PHP 的縮寫, 但從 RHEL / CentOS 7 開始已經不會內置 MySQL, 改為使用 MariaDB, MariaDB 使用上與 MySQL 相同, 舊有的 MySQL 資料庫也可以直接升級使用, 這裡也會示範在 RHEL 8 …
MySQL 的 Primary Key 很多時會使用 AUTO_INCREMENT, 對 AUTO_INCREMENT 的欄位插入 NULL 或者空白的值時, MySQL 會自動產生一個序列編號, 序列編號從 1 開始, 每次加 1. 要在 MySQL 檢查最新一筆的 AUTO_INCREMENT, 可以使用 SELECT MAX() 完成, 例如: 要找出下一筆 AUTO_INCREMENT …
當一些 PHP 開啟 MySQL 連線後, 沒有成功關閉 MySQL 連線, 會有一大堆 sleep 的 process, 在 MySQL 可以執行以下指令查看: mysql> SHOW PROCESSLIST; 執行上面的 MySQL 指令會出現很多 Sleep 的連線, 當這些 Sleep 的連線過多時, 很容易會觸及 max_connections 的限制, …
以下是 MySQL 及 MariaDB 在指令模式下刪除帳號及權限的方法。 先用 root 登入 MySQL: /linux/mysql $ mysql -u root -p 登入後會看到 “mysql” 或 “MariaDB” 的提示符, 可以先用以下 SQL 語句檢視所有 MySQL 帳號: /linux/mysql/select-user mysql> SELECT User,Host …
MySQL 5.7 為了增加系統安全性, 加入了 validate_password plugin, 可以自定 MySQL 使用者帳號密碼的強度, 當建立 MySQL 帳號或者修改密碼時, 密碼強度不符合要求, 會出現以下錯誤: ERROR 1819 (HY000): Your password does not satisfy the current policy requirements. 解決方法是設定一組比較複雜的密碼, 以符合 MySQL …
今天在一台安裝了 MySQL 5.5 的主機上, 建立資料表時, 出現以下錯誤: ERROR 1071 (42000): Specified key was too long; max key length is 767 bytes 要看到這個錯誤, 可以在 MySQL 5.5/5.6 (或 Mariadb) 上嘗試執行以下指令建立資料庫: # mysql …
以前 MySQL 的 “RENAME DATABASE” 指令, 已經在 5.1.23 後的版本刪除, 原因是重新命名資料庫時存在資料遺失的風險。 以下示範用 “RENAME TABLE” 指令及 mysqldump 指令, 替資料庫重新命名的方法: RENAME TABLE 這個方法適合資料庫比較大的情況, 但缺點是需要對每個資料表逐一執行。 先建立一個空白的資料庫, 名稱用要變更的資料庫名稱, 以下假設舊資料庫是 oldname; 新資料庫是 newname: 然後把資料表逐一用 RENAME …