1 使用Navicat Lite 远程链接虚拟机数据库出现 2003错误
虚拟机是打开的,但是虚拟机里面安装MySQL的docker容器没有打开
1 方案一
打开使用命令docker ps -a
查看所有容器
使用docker start +容器id,打开docker容器
2 方案二
使用命令格式,设置docker容器开机自启动
docker update --restart=always 容器名称或者容器id
2 找不到support-files文件夹和里面的mysql.server的启动脚本(即将docker容器里面的mysql,添加到linux的service服务管理)
2022.02.15:只找到查询安装位置的方法
whereis mysql //查询数据库路径
ps -ef | grep mysql /*我使用的时候无法查询到地址需要解决(不知道是不是mysql安装在docker中的问题)
ps:老师回复这个是查询进程的命令*/
find / -name #文件名称# /*linux下根据名称查找文件(尝试进入docker容器内部查询,
也无法查询到mysql.server文件)*/
ll 或者全写 ls -l //查询当前文件夹下面的文件,注意在docker容器里面ll会无效,需要全写
cat “文件名称” //查看文件内容
2022.02.16:问题已经找出是因为mysql安装在docker容器里面的原因
暂时解决办法:使用下面 “3” 的指令进入docker容器进行登录mysql
待解决:在linux任何目录下,登录docker容器里面的数据库
ps:即将docker容器里面的mysql,添加到linux的service服务管理
3 进入docker容器,并修改mysql中的my.cnf配置文件
docker ps //查询docker容器id
docker exec -it #容器id# /bin/bash //进入容器内部
vi my.cnf //修改my.cnf配置文件,会进入vim操作界面
退出容器:如果要退出bash有2种操作:
1)Ctrl + d 退出并停止容器;2)Ctrl + p + q 退出并在后台运行容器;
重启docker容器:
docker restart 容器ID
4 登录数据库
//通过上面命令进入docker容器,使用
mysql -u root -p /*进行登录,-u <后面跟用户,指定用户> ,-p 后面可以跟密码(但是不能有空格),
推荐在下一行输入*/
如 mysql -uroot -p“密码” //常规写法
exit; //进行退出,注意mysql命令中结尾必须要带";"符号,不然就是下一行代码
/var/lib/dpkg/alternatives/my.cnf //docker 容器中my.cnf文件存放位置
面试小知识:mysql默认端口是3306,配置文件5.7版本是“ my.cnf ”文件
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。