Tag: MariaDB

MySQL 的 IN 及 NOT IN 用法

MySQL 在 where 後面使用 IN 及 NOT IN 語法, 可以搜索跟一系統數值是否匹配, 支援 SELECT, UPDATE 及 DELETE, 而不用逐一用 OR 連接。 MySQL IN 例如要找出 member_id 是 10, 20 及 30 的會員資料, 用 …

RHEL / CentOS 7 升級 MariaDB 到 10.5

RHEL 及 CentOS 7 預設的 MariaDB 版本是仍然停留在 5.5。MariaDB 10 是以 MySQL 5.5 為基礎, 加上移植自 MySQL 5.6 的功能和自行開發的新功能。 以下是在 CentOS 7 升級到 MariaDB 10.5, 以及將舊有資料轉移的步驟: 首先確認目前安裝的 MariaDB 版本, 如果是透過預設的 YUM …

MySQL 檢視及修改 AUTO_INCREMENT 的值

MySQL 的 Primary Key 很多時會使用 AUTO_INCREMENT, 對 AUTO_INCREMENT 的欄位插入 NULL 或者空白的值時, MySQL 會自動產生一個序列編號, 序列編號從 1 開始, 每次加 1. 要在 MySQL 檢查最新一筆的 AUTO_INCREMENT, 可以使用 SELECT MAX() 完成, 例如: 要找出下一筆 AUTO_INCREMENT …

解決 MySQL 錯誤 – ERROR 1819 (HY000)

MySQL 5.7 為了增加系統安全性, 加入了 validate_password plugin, 可以自定 MySQL 使用者帳號密碼的強度, 當建立 MySQL 帳號或者修改密碼時, 密碼強度不符合要求, 會出現以下錯誤: ERROR 1819 (HY000): Your password does not satisfy the current policy requirements. 解決方法是設定一組比較複雜的密碼, 以符合 MySQL …

MySQL / MariaDB 重新命名資料庫

以前 MySQL 的 “RENAME DATABASE” 指令, 已經在 5.1.23 後的版本刪除, 原因是重新命名資料庫時存在資料遺失的風險。 以下示範用 “RENAME TABLE” 指令及 mysqldump 指令, 替資料庫重新命名的方法: RENAME TABLE 這個方法適合資料庫比較大的情況, 但缺點是需要對每個資料表逐一執行。 先建立一個空白的資料庫, 名稱用要變更的資料庫名稱, 以下假設舊資料庫是 oldname; 新資料庫是 newname: 然後把資料表逐一用 RENAME …