MariaDB資料庫管理系統是MySQL的一個分支,主要由開源社群在維護,採用GPL授權授權。開發這個分支的原因之一是:甲骨文公司收購了MySQL後,有將MySQL閉源的潛在風險,因此社群採用分支的方式來避開這個風險
安裝Mariadb
sudo apt-get install mariadb-server
升級Mariadb
如果Mariadb版本小於10.2.14則須進行Maraidb升級
檢查目前Mariadb版本
mysql --version
建立資料庫的來源
sudo apt-get install software-properties-common
sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8
sudo add-apt-repository 'deb [arch=amd64,i386,ppc64el] http://ftp.ubuntu-tw.org/mirror/mariadb/repo/10.2/ubuntu xenial main'
sudo apt update
sudo apt install mariadb-server
最後檢查版本是否已經更新
mysql --version
可參考以下連結內容來更新最新版本
https://downloads.mariadb.org/mariadb/repositories/#mirror=ossplanet&%3Bdistro=Ubuntu&%3Bdistro_release=xenial--ubuntu_xenial&%3Bversion=10.2&distro=Ubuntu&distro_release=xenial--ubuntu_xenial&version=10.3
轉移資料庫
【登入Mariadb並建立資料庫】
mysql –u root -p
create database [example]
【建立登入帳號並給予資料庫權限】
create user [example_user] identified by ‘[example_password]’
grant all on [example].* to [example_user]
【檢查[example_user]的權限】
show grants for [example_user]
【轉移資料庫】
匯出資料庫(如果無法建立,請檢查所存放的資料夾權限)
mysqldump –u root –p [root_password] [example] > [example.sql]
還原資料庫
mysql –u root –p [root_password] [example] < [example.sql]
建立資料庫預設採用utf-8編碼
修改 /etc/mysql/my.cnf
sudo vim /etc/mysql/my.cnf
在[mysqld]中加上以下內容
[mysqld]
character-set-server=utf8
collation-server=utf8_general_ci
重啟mariadb
service mysql restart
最後確認是否使用utf8
mysqladmin -u root -p var | grep -E 'character|collation' | tr -s ' '
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
| collation_connection | utf8_general_ci |
| collation_database | utf8_general_ci |
| collation_server | utf8_general_ci |
或是
mysql -u root -p [root_password]
status;
【變更現有DATABASE支援UTF8】
ALTER DATABASE 【databasename】 CHARACTER SET utf8 COLLATE utf8_general_ci;
【變更現有TABLE支援UTF8】
先查詢TABLE欄位的語系
SHOW FULL COLUMNS FROM [TABLE_NAME];
更成UTF8
ALTER TABLE 【TABLE_NAME】 CONVERT TO CHARACTER SET utf8;
最後再確認一下即可
【修改欄位描述說明】
如果習慣在MS SQL中寫欄位說明的,可以使用以下語法在Mariadb中加上說明
ALTER TABLE [table_name] MODIFY [column_name] [column_type] COMMENT '[column_description]'
例:ALTER TABLE EXAMPLE MODIFY NAME VARCHAR(20) COMMENT '使用者名稱'
最後再確認一下SHOW FULL COLUMNS FROM EXAMPLE
=================================================
沒有留言:
張貼留言