docker 制作mysql镜像(一)

你。 提交于 2019-12-06 07:16:50

最近在学习docker,在直接mysql镜像的时候发现了一些问题。

开始想直接用从docker资源库里下载镜像为了省事,但是出现了问题是。只能启动一个mysql容器,启动第二的时候就不行了。只能保证一个mysql好用。而且每次重启的时候mysql容器暴露给外网的端口都会相对应的改变。从而打算自己做一个镜像。然后就发现了好多坎坷。

1.安装mysql的时候需要依赖的包很多。也是查了好久才总结出来的

yum install -y perl
yum install -y libaio
yum install -y perl-Module-Install.noarch

安装mysql rpm包的时候前先执行他们吧,不然会安装不全。(经过多次删除镜像从新安装总结出来的)

这样安装好了以后要注意会出这个 里面有mysql初始密码和my.conf的路

2.安装完就要改密码了

 通过

/etc/init.d/mysql start 启动mysql,启动成功会提Starting MySQL SUCCESS! 

之后使用

mysqladmin -u root -p password 1234

将root密码设为了1234 遇到Enter password:直接回车就好了。一般情况下mysql默认密码是空的

如果出现报错请使用安全模式登录mysql具体步骤如下:

#1.停止mysql数据库
/etc/init.d/mysqld stop 
#2.执行如下命令
mysqld_safe --user=mysql --skip-grant-tables --skip-networking & 
#3.使用root登录mysql数据库
mysql -u root mysql 
#4.更新root密码
 mysql>use mysql;
mysql> UPDATE user SET Password=PASSWORD('1234') where USER='root';
mysql> SET PASSWORD = PASSWORD('1234');
#5.刷新权限 
mysql> FLUSH PRIVILEGES; 
#6.退出mysql
mysql> quit 
#7.重启mysql
/etc/init.d/mysqld restart 
#8.使用root用户重新登录mysql
mysql -uroot -p 
Enter password: <输入新设的密码1234>
#9.mysql授权所有库的所有权限给所有主机
mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '1234' WITH GRANT OPTION;

3.

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!