Docker運行Mysql
Introduction
本章主要說明了如何在docker中的linux中啟用mysql服務。
我的需求是在宿主機上寫代碼,適用mysql數據庫,不想在宿主機上安裝,把數據庫直接放到docker里。
由于我的docker 拉取ubuntu:latest時16.04尚未發布,所以本文的基準鏡像是ubuntu 14.04,其他linux版本理論上也適用。
REPOSITORY TAG IMAGE ID CREATED SIZE
ubuntu latest b72889fa879c 6 weeks ago 188 MB
通過 docker run -it -p 3306:3306 ubuntu /bin/bash 進入容器,此處的命令含義可以在Dcoker初體驗中了解。
安裝配置mysql
在容器中的操作:
apt-get update && apt-get install mysql-server -y
配置mysql,使得可以遠程登陸。首先修改幫頂地址
vi /etc/mysql/my.cnf
將 bind-address = 127.0.0.1 改為
bind-address = 0.0.0.0
保存后,從終端進入mysql:
service mysql start
mysql -u root -p -A
-u 是指定用戶, -p 是密碼登陸的意思,輸入密碼后登陸,( -A 沒太理解,但是后面從宿主機登陸的時候,好像沒加出問題了,歡迎留言寫下你的觀點)。進入后通過 create database a_new_sql 來創建新的數據庫, use a_new_sql 來使用這個數據庫。
進入數據庫后,執行以下命令賦予權限:
grant all on * to 'root'@'%' identified by 'mysecret';
表示將當前數據庫( on * 代表的含義)的所有權限( all )賦予( grant )給用戶root( 'root' ),允許它從任意地點登陸( @'%' ),它的登陸密碼是 mysecret (identified by ‘mysecret’)
exit 退出mysql的命令行,回到容器的命令行。
在宿主機連接:
mysql -u root -p -h 127.0.0.1
輸入密碼后登陸成功。在mysql-workbench等可視化工具里也是一樣的登陸方法。
Reference
來自: http://www.findspace.name/easycoding/1701
本文由用戶 HilLuscombe 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!