跳至主要內容

Docker安装SqlServer、MariaDB

Dennis...约 925 字大约 3 分钟Docker

一、Docker 安装SqlServer 说明

1. 拉取镜像

docker pull mcr.microsoft.com/mssql/server:2019-latest

2.运行

docker run --name mssqlserver_2019 -d --restart unless-stopped -e "ACCEPT_EULA=Y" -p 1433:1433 -e TZ="Asia/Shanghai" -e "MSSQL_SA_PASSWORD=1234.com" mcr.microsoft.com/mssql/server:2019-latest

3.连接

可以使用官方的SSMS工具连接或者第三方管理工具连接,账号为sa,密码为1234.com

PS:官方文档
Docker: Install containers for SQL Server on Linux - SQL Serveropen in new window

二、Docker 安装MariaDB 说明

1. 拉取镜像

docker pull mariadb:10.8

2.运行

docker run --name mariadb_10.8 -d --restart unless-stopped -p 3306:3306 -e TZ="Asia/Shanghai" -e MYSQL_ROOT_PASSWORD=1234.com mariadb:10.8

PS:官方文档
Installing and Using MariaDB via Dockeropen in new window

3.账号管理

3.1 登录数据库

mariadb -u root -p

输入初始密码1234.com回车即可

3.2 查看内置账号

select user,host,password from mysql.user;

这里Host为localhost的root是只允许本地登录的,Host为%的是可以外部连接登录的
不建议直接使用root账号外部登录,所以我们把%的这个删掉
建议新添加一个账号提供给外部使用

3.3 删除外部登录的root账号

delete from mysql.user where user='root' and host='%'; flush privileges;

3.4 添加外部账号

grant all privileges on *.* to dennis@'%' identified by 'dennis'; flush privileges;

也可以添加ip网段限制

GRANT ALL privileges ON *.* TO 'dennis'@'192.168.71.%' identified by 'my-new-password' with grant option; flush privileges;

4.更改编码格式(可忽略)

可选操作,更改编码格式等
如更改数据库编码格式和排序规则等。。。
可参考另一篇文章 https://www.dennisdong.top/archives/2022/CentOS安装mariadb以及更改数据库存储路径.htmlopen in new window
默认的编码格式是utf8mb3,我们需要更改为utf8mb4,具体什么区别,上面文章中有讲到

4.1 查找mysql配置

查看所有已运行的容器

docker ps

进入docker镜像内部的etc文件夹

docker exec -it 你的镜像ID bash

查看配置文件

这两个文件的内容是一模一样的,也有对各个文件的说明,我们只需要改mariadb.conf.d的配置即可,全局配置不用更改

4.2 进入配置文件夹

cd mariadb.conf.d/
ls

4.3 查看配置文件

cat 50-server.cnf

需要更改的配置在mysqld标记下面添加即可

4.4 更改配置文件

vim 50-server.cnf

此时会报错,vim: command not found,需要安装vim

apt-get install vim

需要更新apt-get

apt-get update

如果无法更新,需要替换apt-get镜像源

更改镜像源参考文章 https://www.dennisdong.top/archives/2022/Docker中apt-get-update失败解决方案.htmlopen in new window

更改完成之后再次安装输入y即可

重新执行

vim 50-server.cnf

复制内容到mysqld

# 设置server相关编码和排序规则
character-set-server=utf8mb4
# 跳过连接参数,如 mariadb -u root -p --default-character-set=latin2
skip-character-set-client-handshake

如果鼠标右键无法直接粘贴进去,查了很多方法说更改vimdefault.vim以及安装vim-scripts,vim=gtk等都没用,直接使用shift + insert快捷键即可

更改完需要重启mariadb镜像

4.5 重启镜像查看配置

评论
  • 按正序
  • 按倒序
  • 按热度
Powered by Waline v2.15.6