服务器之家:专注于服务器技术及软件下载分享
分类导航

Linux|Centos|Ubuntu|系统进程|Fedora|注册表|Bios|Solaris|Windows7|Windows10|Windows11|windows server|

服务器之家 - 服务器系统 - Linux - docker构建Mariadb数据库

docker构建Mariadb数据库

2023-10-09 20:20未知服务器之家 Linux

导读 MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可 MariaDB的目的是完全兼容MySQL,包括API和行,使之能轻松成为MySQL的代替品。在存储引擎方面,使用XtraDB(英语:XtraDB)来代替MySQL的InnoDB。 Ma

导读 MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可 MariaDB的目的是完全兼容MySQL,包括API和 行,使之能轻松成为MySQL的代替品。在存储引擎方面,使用XtraDB(英语:XtraDB)来代替MySQL的InnoDB。 MariaDB由MySQL的创始人Michael Widenius(英语:Michael Widenius)主导开发,他早前曾以10亿美元的价格,将自己创建的公司MySQL AB卖给了SUN,此后,随着SUN被甲骨文收购,MySQL的所有权也落入Oracle的手中。MariaDB名称来自Michael Widenius的女儿Maria的名字。

docker构建Mariadb数据库

获取mariadb镜像地址
root@debian1:~/nginx# docker search mariadb
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
mariadb MariaDB is a community-developed fork of M... 1417 [OK]
bitnami/mariadb Bitnami MariaDB Docker Image 39 [OK]
拉去maridb的最新镜像
root@debian1:~/nginx# docker pull mariadb
Using default tag: latest
latest: Pulling from library/mariadb
启动,mariadb镜像
root@debian1:~/nginx# docker run --privileged -d -e TIMEZONE=Asis/Shanghai -e MYSQL_ROOT_PASSWORD=hanye131 -e SERVER_ID=1 -v $PWD/mysql_db:/var/lib/mysql -p 3306:3306 mariadb
255650e5e83d27402b1df338c09c0639b1512e73ef27cd31e1f2c90509dc104c
root@debian1:~/nginx# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
255650e5e83d mariadb "docker-entrypoint..." 3 seconds ago Up 1 second 0.0.0.0:3306->3306/tcp festive_ride

查看启动占用的端口
root@debian1:~/nginx# netstat -tunl|grep 3306
tcp6 0 0 :::3306 :::* LISTEN
链接docker的mysql
root@debian1:~/nginx# mysql -uroot -phanye131 -h127.0.0.1
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 8
Server version: 5.5.5-10.2.6-MariaDB-10.2.6+maria~jessie mariadb.org binary distributionCopyright (c) 2000, 2017, Oracle and/or its affiliates. All rights reserved.Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.mysql>
错误解决方案

如果提示无法链接找到sock文件,你需要链接到docker的mariadb容器之内来授权链接

链接到docker mariadb之内

获取mariadb的CONTAINER ID

root@debian1:~/nginx# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
255650e5e83d mariadb "docker-entrypoint..." 10 minutes ago Up 10 minutes 0.0.0.0:3306->3306/tcp festive_ride
360baf71efb0 a3ae0b27ec04 "/run.sh bash" 3 hours ago Exited (2) 3 hours ago nginx

我这里的mariadb的镜像的CONTAINER ID是 255650e5e83d

登录mariadb之内
root@debian1:~/nginx# docker exec -it 255650e5e83d bash
root@255650e5e83d:/#
授权mysql的root用户的链接权限(其通用户同样设置)
MariaDB [(none)]> grant all on *.* to 'root'@'192.168.1.%' identified by 'hanye131';
Query OK, 0 rows affected (0.01 sec)
MariaDB [(none)]> flush privileges;
Query OK, 0 rows affected (0.01 sec)
再次链接mysql即可

原文来自:


延伸 · 阅读

精彩推荐
  • LinuxLinux下简易进度条的实现代码

    Linux下简易进度条的实现代码

    下面小编就为大家带来一篇Linux下简易进度条的实现代码。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧...

    Linux教程网7672021-12-21
  • Linuxlinux查找可执行文件的方法

    linux查找可执行文件的方法

    这篇文章主要介绍了linux查找可执行文件的方法,需要的朋友可以参考下 ...

    linux教程网7862019-11-14
  • Linuxlinux cgroups详细介绍

    linux cgroups详细介绍

    这篇文章主要介绍了linux cgroups详细介绍,Cgroups是control groups的缩写,是Linux内核提供的一种可以限制、记录、隔离进程组(process groups)所使用的物理资源(...

    linux技术网3192019-11-07
  • LinuxMesa 23.1.1 3D 图形库发布:改进 Fedora 37 中 Firefox 浏览器 VA-API / H.264 解码

    Mesa 23.1.1 3D 图形库发布:改进 Fedora 37 中 Firefox 浏览器 VA-API /

    6 月 5 日消息,Mesa 23.1.1 发布,作为最新 Mesa 23.1 开源图形堆栈系列的第一个维护更新,适用于基于 Linux 的操作系统和其他支持平台,为已知应用程序和视...

    未知1522023-06-05
  • Linux在Linux下确定网卡所使用驱动程序的方法

    在Linux下确定网卡所使用驱动程序的方法

    最近一些朋友问小编在Linux下如何确定网卡所使用驱动程序?今天小编要为大家带来的是在Linux下确定网卡所使用驱动程序的方法,希望对大家会有帮助,有...

    Linux之家6402019-05-30
  • Linuxlinux NFS 学习笔记

    linux NFS 学习笔记

    通过使用NFS,用户和程序可以像访问本地文件一样访问远端系统上的文件...

    Linux教程网5122021-10-16
  • LinuxVsftpd+tcp_wrappers控制主机和用户访问

    Vsftpd+tcp_wrappers控制主机和用户访问

    RHEL4中的vsftpd在编译时已经支持 tcp _wrappers,因此可以利用tcp_wrappers实现主机访问控制。 实验之前,首先说下tcp-wrappers的执行顺序: 先执行hosts.allow,如果...

    Linux教程网5142020-04-13
  • Linux使用uptimed命令监视Linux系统正常运行时间

    使用uptimed命令监视Linux系统正常运行时间

    今天这篇文章就为大家分享一个用于记录和跟踪系统的运行时间的实用命令行工具,它的名字叫做 uptimed。...

    良许Linux5042021-06-24