sql-server - 连接到部署在 Kubernetes 中的 SQL Server Docker 容器时,用户 SA 登录失败

标签 sql-server docker kubernetes yaml

我正在关注有关微服务的教程 https://www.youtube.com/watch?v=DgVjEo3OGBI

有时,我使用此 Yaml 文件在 Kubernetes 中部署 SQL Server 镜像:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: mssql-depl
spec:
  replicas: 1
  selector:
    matchLabels:
      app: mssql
  template:
    metadata:
      labels:
        app: mssql
    spec:
      containers:
        - name: mssql
          image: mcr.microsoft.com/mssql/server:2019-latest
          ports:
            - containerPort: 1433
          env:
          - name: MSSQL_PID
            value: "Express"
          - name: ACCEPT_EULA
            value: "Y"
          - name: SA_PASSWORD 
            valueFrom:
              secretKeyRef:
                name: mssql5 
                key: SA_PASSWORD
          volumeMounts:
          - mountPath: /var/opt/mssql/data
            name: mssqldb
      volumes:
      - name: mssqldb
        persistentVolumeClaim:
          claimName: mssql-claim
---
apiVersion: v1
kind: Service
metadata:
  name: mssql-clusterip-srv
spec:
  type: ClusterIP
  selector:
    app: mssql
  ports:
  - name: mssql
    protocol: TCP
    port: 1433
    targetPort: 1433
---
apiVersion: v1
kind: Service
metadata:
  name: mssql-loadbalancer
spec:
  type: LoadBalancer
  selector:
    app: mssql
  ports:
  - protocol: TCP
    port: 1433
    targetPort: 1433

还有 PVC.yaml:

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: mssql-claim
spec:
  accessModes:
    - ReadWriteMany
  resources:
    requests:
      storage: 200Mi

然后,我在 Kubernets 中创建一个 secret ,保存 SQL Server sa 帐户的密码,然后在 Yaml 文件中使用该 secret 。

kubectl create secret generic mssql5 --from-literal=SA_PASSWORD="MyC0m9l&xPassw0rd"

然后应该可以使用 sa 帐户和密码直接连接到本地主机端口 1433 上的 SQL Server 容器。

但是,我在尝试连接时收到“用户 SA 登录失败”错误。我已经尝试了一切,包括将 SA_PASSWORD 更改为 MSSQL_SA_PASSWORD、更改密码的复杂性、在 SQL Server 中启用 sa 用户登录,该功能之前被禁用,并且像我以前从未用 google 过一样进行 google 搜索。 TCP/IP 设置在 SQL Server 配置管理器中启用。我无法访问。谁能解释一下这个问题?

最佳答案

enter image description here 如果你关闭该服务,它就会工作

关于sql-server - 连接到部署在 Kubernetes 中的 SQL Server Docker 容器时,用户 SA 登录失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71096335/

相关文章:

mysql - 将 MySQL 迁移到 SQL Server - 外键给出了一个不清楚的错误(对我来说)

sql-server - 使用SQL Server在grails上映射map数据类型

docker - 无法使用Jenkins的kubernetes-plugin构建docker镜像

java - 如何从java代码修改现有的docker-compose文件

docker - 在负载下微服务之间的 http 调用的时间差异

sql - 如何回滚数据库部署而不丢失新数据?

sql - 如何将两个查询的结果合并到一个数据集中

azure - 将 Keycloak Docker 镜像部署到 Azure 应用服务 - 无法创建管理员用户

azure - Azure 中多个子网和/或可用区中的 Kubernetes

amazon-web-services - Prometheus警报管理器不发送警报k8s