Centos7里面沒有Mysql 取而代之的是MariaDB,MariaDB是完全開源的。MariaDB數據庫管理系統是MySQL的一個分支,主要由開源社區在維護,采用GPL授權許可 MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能輕松成為MySQL的代替品 (引自百度百科 ).
docker run --privileged -d --restart=always -e TIMEZONE=Asis/Shanghai -e MYSQL_ROOT_PASSWORD=admin -e SERVER_ID=1 -v /opt/data/mariadb/dbdata:/var/lib/mysql -p 3306:3306 mariadb --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
或者使用多行格式
docker run --privileged -d --restart=always \
-e TIMEZONE=Asis/Shanghai \
-e MYSQL_ROOT_PASSWORD=admin \
-e SERVER_ID=1 \
-v /opt/data/mariadb/dbdata:/var/lib/mysql \
-p 3306:3306 mariadb \
--character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci \
參數說明:--privileged 賦予容器擴展權限(root)
設置--restart=always 參數的時候, 設置了此參數容器退出了會自動重啟, 宿主機重啟了容器也能自動重啟
-d后台運行
TIMEZONE 設置時區
MYSQL_ROOT_PASSWORD 設置root密碼
-v /opt/data/mariadb/dbdata:/var/lib/mysql:/var/lib/mysql 將mariadb里面的目錄(/var/lib/mysql)掛載到宿主機里面
character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci 設置 utf-8字符集和排序規則
使用 Navicat Premium 連接 測試 。
設置了--restart=always 如何刪除容器呢? 要先停止 docker stop [containterID] 然后刪除 docker rm [containterID]。不能直接刪除的,因為刪除了還會啟動的。。。。
