Docker安装数据库

这篇博客详细介绍了如何利用Docker来安装和配置不同类型的数据库,包括MySQL、Oracle、SQL Server和PostgreSQL。提供了通用的Docker命令,并且针对每种数据库给出了特定的设置和操作建议。
摘要由CSDN通过智能技术生成

通用命令

# 删除镜像
docker rmi <image id>

# 删除全部image
docker rmi $(docker images -q)

# 删除容器
docker rm <容器ID>

MySQL

# 拉取
docker search mysql
sudo docker pull mysql
# 启动
sudo docker run --name mysql -e MYSQL_ROOT_PASSWORD=12345 -p 3306:3306 -d mysql --lower_case_table_names=1
# -p 3306:3306:将容器的 3306 端口映射到主机的 3306 端口。
# -v $PWD/conf:/etc/mysql/conf.d:将主机当前目录下的 conf/my.cnf 挂载到容器的 /etc/mysql/my.cnf。
# -v $PWD/logs:/logs:将主机当前目录下的 logs 目录挂载到容器的 /logs。
# -v $PWD/data:/var/lib/mysql :将主机当前目录下的data目录挂载到容器的 /var/lib/mysql 。
# -e MYSQL_ROOT_PASSWORD=12345:初始化 root 用户的密码。

docker run -it --network some-network --rm mysql mysql -hsome-mysql -uexample-user -p

# 登录容器
docker exec -it mysql bash
mysql -uroot -p12345

修改表名区分大小写、GroupBy限制

mv /etc/apt/sources.list /etc/apt/sources.list.bak
echo "deb http://mirrors.163.com/debian/ jessie main non-free contrib" >/etc/apt/sources.list
echo "deb http://mirrors.163.com/debian/ jessie-proposed-updates main non-free contrib" >>/etc/apt/sources.list
echo "deb-src http://mirrors.163.com/debian/ jessie main non-free contrib" >>/etc/apt/sources.list
echo "deb-src http://mirrors.163.com/debian/ jessie-proposed-updates main non-free contrib" >>/etc/apt/sources.list

apt-get update 

apt-get install -y vim

vim /etc/mysql/mysql.conf.d/mysqld.cnf

[mysqld]
lower_case_table_names=1
sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION'

https://www.cnblogs.com/baolong/p/5763412.html

Oracle

# 拉取
docker pull registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g

# 创建
docker run -d -p 1521:1521 --name oracle11g registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g

# 启动
docker start oracle11g

# 进入进行配置
docker exec -it oracle11g bash
su root
helowin

vi /etc/profile
export ORACLE_HOME=/home/oracle/app/oracle/product/11.2.0/dbhome_2
export ORACLE_SID=helowin
export PATH=$ORACLE_HOME/bin:$PATH

# 创建软连
ln -s $ORACLE_HOME/bin/sqlplus /usr/bin

# 登录sqlplus修改sys、system用户的密码
su - oracle
sqlplus /nolog
conn /as sysdba

alter user system identified by system;
alter user sys identified by sys;

alter database mount;
alter database open;

ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;

# 参看当前数据库
select name from v$database;

# 参看表
SELECT * FROM user_tables

# 查看SID
ps -ef|grep ora_

SqlServer

# 拉取
docker pull microsoft/mssql-server-linux:2017-latest

# 注意密码的设置,否则无法启动容器
docker run -e 'ACCEPT_EULA=Y' -e 'MSSQL_SA_PASSWORD=test@123' -p 1433:1433 --name sqlserver -d microsoft/mssql-server-linux:2017-latest

docker exec -it sqlserver "bash"

/opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P 'test@123'

PostgreSQL

docker pull postgres:10.9
docker run -p 5432:5432 --name postgres -e POSTGRES_PASSWORD=12345 -d postgres:10.9
docker exec -it postgres psql -h localhost -U postgres
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值