Centos7上使用docker镜像方式安装Sybase
OS:Centos7.8内核:uname -r3.10.0-327.el7.x86_64主要操作流程简介:1.升级docker的版本(yum update)2.安装docker服务(yum install docker)3.拉取/下载Sybase镜像(docker pull)4.创建并启动容器(docker run)5.进入容器进行Sybase配置和操作详细操作步骤1.升级docker的版本升级d
OS:Centos7.8
内核:uname -r
3.10.0-327.el7.x86_64
主要操作流程简介:
1.升级docker的版本(yum update)
2.安装docker服务(yum install docker)
3.拉取/下载Sybase镜像(docker pull)
4.创建并启动容器(docker run)
5.进入容器进行Sybase配置和操作
详细操作步骤
1.升级docker的版本
升级docker版本,首先要升级所有包、包括升级软件和升级系统内核,然后再升级/安装高版本的docker。
升级操作详情参考:《Centos7上升级docker版本》
如果不升级docker版本,直接 yum install -y docker 安装docker服务后,后续docker操作会报错,网上找资料说是因为Linux与docker版本的兼容性问题,需要升级docker版本才行。
最初我没有升级,遇到一些列的报错,遇到的报错及排查过程,详情参考:《Centos7上使用docker镜像方式安装Sybase的报错问题处理》
2.安装docker服务
yum install -y docker
3.拉取/下载Sybase镜像
搜索sybase镜像
docker search -s 10 sybase
Flag --stars has been deprecated, use --filter=stars=3 instead
INDEX NAME DESCRIPTION STARS OFFICIAL AUTOMATED
docker.io docker.io/ifnazar/sybase_15_7 SYBASE 15.7 21
docker.io docker.io/datagrip/sybase Sybase 15.7 & 16.0 18 [OK]
下载sybase镜像
docker pull datagrip/sybase
下载镜像完毕后查看镜像
docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
docker.io/datagrip/sybase latest 29cd514762d6 11 months ago 5.92 GB
导出镜像文件(方便以后可以直接通过 docker load -i 方式加载进行,就不需要重新pull了)
docker save -o /opt/sybase.tar docker.io/datagrip/sybase:latest
sybase账号
账号密码可以通过 cat /opt/sybase/init1.sql 查看
用户: tester
密码: guest1234
数据库: testdb
初始sa账号密码不知道,后面需要重置sa账号密码
4.创建并启动容器(docker run)
创建并启动容器(由于默认容器内磁盘只有10G,所以我加了 -v 参数,挂载共享目录到容器内使用,将宿主机的/opt/docker_data目录挂在到容器的/data目录)
mkdir -p /opt/docker_data
docker run -d -ti -p 8000:5000 -v /opt/docker_data:/data:rw --name datagrip-sybase datagrip/sybase
如果能接能执行成功,则安装成功,接下来就行sybase的相关配置和操作就行了。
但我执行 docker run 的时候报错了:/usr/bin/docker-current: Error response from daemon: containerd: container not started.
报错的解决过程比较曲折,详情参考:《Centos7上使用docker镜像方式安装Sybase的报错问题处理》
5.进入容器进行Sybase配置和操作
启动容器并进入容器继续操作
docker start datagrip-sybase
docker exec -ti datagrip-sybase /bin/sh
source /opt/sybase/SYBASE.sh #加载环境变量
isql -U sa -P 1q2w3e -S MYSYBASE #如果sa密码不知道,可以重置sybase sa账号密码,参考《Sybase数据库重置sa用户的密码》
#isql -U tester -P guest1234 -S MYSYBASE
一般正常情况下,前面操作就OK了,剩下的主要是数据库操作。但我遇到了报错,详细处理过程参考《Centos7上使用docker镜像方式安装Sybase的报错问题处理》
查看数据库版本信息
isql -U sa -P 1q2w3e -S MYSYBASE
> select @@version
> go
创建设备、创建数据库(指定设备创建)
ln -s /data /opt/sybase/data/data_disk
source /opt/sybase/SYBASE.sh
isql -U sa -P 1q2w3e -S MYSYBASE
disk init name="testdb_dbdev",physname="/opt/sybase/data/testdb_dbdev.dat",vdevno=10,size=5120000 #注意设备编号vdevno不能重复,size单位是2K,size=5120000 即大小为 5120000*2K≈10G
go
disk init name="testdb_logdev",physname="/opt/sybase/data/testdb_logdev.dat",vdevno=11,size=102400 #size=102400 即 102400*2K≈200M
go
create database testdb on testdb_dbdev=20 log on testdb_logdev=10
go
创建登录用户并使之成为新建库的owner、并设置数据库为用户的默认库、设置
sp_addlogin test,123456
go
sp_role 'grant',oper_role,test
go
use testdb
go
sp_changedbowner testdb
go
sp_modifylogin testdb,defdb,testdb
go
sp_modifylogin testdb,deflanguage,chinese
go
更多推荐
所有评论(0)