使用Docker运行SQL Server
- 作者: 娱小乐爱八卦
- 来源: 51数据库
- 2021-07-28
现在.net core已经跨平台了,大家也都用上了linux用上了docker。跟.net经常配套使用的sql server以前一直是windows only,但是从sql server 2017开始已经支持运行在docker上,也就说现在sql serer已经可以运行在linux下了。
下面在ubuntu 16.4上演示安装并使用sql server 2019-ctp3.2
sql server in docker
sudo docker pull mcr.microsoft.com/mssql/server:2019-ctp3.2-ubuntu
使用docker pull命令从docker hub拉取sqlserver 2019-ctp3.2的镜像
sudo mkdir /hd2/sqlserver2019_data sudo docker run -e "accept_eula=y" -e "sa_password=dev@123," -p 14330:1433 --name sqlserver2019 -v /hd2/sqlserver2019_data:/var/opt/mssql -d mcr.microsoft.com/mssql/server:2019-ctp3.2-ubuntu
使用docker run 命令启动容器,其中要注意的是使用-v参数指定了sqlserver2019_data目录挂载到容器的/var/opt/mssql目录,这个目录是用来存储数据库文件的,所以最好挂载到外容器外部,避免因为不小心删除容器而丢失数据
sudo docker ps -a
使用docker ps 命令查看容器运行情况,可以看到sqlserver2019正在运行
使用命令行连接sql server
sudo docker exec -it sqlserver2019 "bash"
使用docker exec命令登录到容器内部执行命令
/opt/mssql-tools/bin/sqlcmd -s localhost -u sa -p "dev@123,"
在容器内部执行命令,打开sqlcmd
打开sqlcmd之后我们就可以进行一些数据库的操作了,比如创建数据库,创建表,查询数据等。
create database test_db go use test_db go create table table1 (id int, name nvarchar(50)) go insert into table1 values (0, 'agile')
创建test_db数据库;创建表table1;插入一行数据;查询表数据
我们使用docker运行的sql server同样可以使用sql server management studio来管理。
使用服务器ip加端口连接成功后,可以看到刚才新建的数据库test_db跟表table1还有里面的数据都在。能使用ssms管理后就简单多了跟使用sql server其他版本没啥区别。
至此sql server in docker的基本操作演示的差不多了,还有更多的高级功能比如配置故障转移集群,复制订阅,always on等功能跟windows环境配置还有点区别大家可以自己尝试一下。
- SQLite数据库操作:原生操作,GreenDao操作讲解
- 数据库SQL实战题:获取员工其当前的薪水比其manager当前薪水还高的相关信息(教程)
- SQLSERVER查询区分大小写的写法分析
- SQL学习总结之SQL的分类介绍
- 阶梯到高级T-SQL 1级:高级T-SQL介绍交叉连接
- 高级T-SQL级别1的Stairway:使用CROSS JOIN引入高级T-SQL分析
- 什么是SQL隔离级别?四个SQL隔离级别定义介绍
- Sql递归介绍之用with实现递归查询
- SQLSERVER查询时日期格式化的实例讲解
- 数据库SQL实战:从titles表获取按照title进行分组,注意对于重复的emp_no进行忽略(题解)