35.Docker安裝Mysql掛載Host Volume


兩個文件系統有塊區域Area,咱們要作的是把兩個Area作文件映射

jesse騰訊雲上有個linux的環境,版本比較老了


簡書的地址:
https://www.jianshu.com/p/b3bf647a726e
先把舊版的移除掉
mysql

yum -y remove docker docker-common container-selinux

設置新版本的docker的地址linux

yum-config-manager \
    --add-repo \
    https://docs.docker.com/v1.13/engine/installation/linux/repo_files/centos/docker.repo






安裝完成後啓動docker

啓動後再看下docker的版本

石墨文檔的地址
課程中使用的 docker 命令文檔:
https://shimo.im/docs/anrlYMFEYloN52c8/ 
mount是用於集羣的

這裏先來實驗Volume這種方式
這裏的--volume能夠縮寫成-v



在騰訊雲上新建dokcer/mysql/config的文件夾


而後在mysqk下面再去新建db文件夾。
config用來防止mysql的配置文件的

在config下新建my.cnf文件



開始調用


進入etc/docker文件夾

編輯daemon.json這個文件
vim daemon.json:編輯這個文件。可是沒有這個文件。
咱們用vi 新建daemon.json這個文件

把阿里雲上的鏡像拷貝過去


打開這個文件看一下
cate daemon.json

systemctl restart docker:重啓docker

而後再來執行這個語句,他會去mysql的官方去下載mysql的鏡像


這裏報錯了


刪除這個mysql01


這裏是有config和data這兩個文件夾。
須要在mysql的目錄下有個data文件夾

再次執行仍是報錯了


問題是my.cnf竟然是一個文件夾

移除掉這個文件夾


在config下建立my.cnf這個文件
vi my.cng



再次查看一下,確實是一個文件了



再次執行。先把以前的刪掉,再去執行

docker logs mysql01:查看執行的日誌

cokder ps查看到mysql01已經啓動了

docker logs mysql01:找到root的默認密碼


docker exec -it mysql01 bash:exec執行base 進入到mysql01

使用root登錄,而後輸入密碼


使用這個命令設置mysql的密碼





看到root仍是隻能在localhost上登錄

再來看下字符集的問題,依然沒有utf-8


退出這個容器:exit

進入docker下的mysql文件夾 下面已經有不少mysql的文件在這裏了

進入config文件夾下,這裏有咱們的my.cnf這個文件

vim my.cnf這個文件


加入字符集的配置

docker restart mysql01這個容器

再次進去這個mysql容器而後root登錄,

再次查看咱們的字符集。已經生效了

exit:先退出這個容器
dcoker stop mysql01:而後中止這個容器

docker rm mysql01:刪除這個mysql01的容器


docker ps -a沒有任何容器是在運行的

咱們還能夠使用這個命令,把原來的配置文件和數據都加載過來


執行上面那段命令後,再用docker ps 查看容器

還在啓動,啓動咱們看下字符集是否仍是原來咱們設置的那樣


進入mysql01這個容器

root登錄進去。面是password123
看到字符集仍是以前咱們設置的







 sql

相關文章
相關標籤/搜索