SQL Server 2017 AlwaysOn Linux上配置和维护(8)

  <编辑>


<强>准备工作

1。更新每个节点的机器名,必须满足:

<李>

15个字符或更少。

<李>

在网络中是唯一的。

可以用以下语句修改机器名:

sudo  vi /etc/主机名


2。配置主机名和IP地址的解析

通常在DNS服务器注册主机名和IP地址,为了进一步保证同一个AG)中多个节点可以互相通信,我们在每个节点使用如下命令修改主机文件:

sudo  vi /etc/主机

 SQL Server 2017 AlwaysOn> sudo  ip  addr 显示</pre> <p>或</p> <pre类= sudo  ifconfig

修改后可以用平命令尝试ping主机名,必须返回对应的真正的IP地址才行,也就是主机文件中不能包含类似主机名和127.0.0.1的对应记录。

 SQL Server 2017 AlwaysOn> sudo /opt/该软件/bin/mssql-conf  set  hadr.hadrenabled  1
  sudo  systemctl  restart  mssql-server </pre> <p> <强> <br/> </强> </p> <p> <>强启用AlwaysOn_health </强> <强>扩展事件会话</强> </p> <p>在每个节点上开启该会话,以便在对某一可用性组进行故障排除时帮助诊断根本原因:</p> <pre类= ALTER  EVENT  SESSION  AlwaysOn_health 提醒SERVER  WITH  (STARTUP_STATE=);   以前去

<强>

<强>创建数据库镜像端点访问使用的用户

CREATE  LOGIN  dbm_login  WITH  PASSWORD =, & # 39; * * & lt; Your  Password> * * & # 39;;   CREATE  USER  dbm_user  FOR  LOGIN  dbm_login;

<强>

<强>创建证书

Linux上的SQL Server服务使用证书验证镜像终结点之间的通信。连接到主SQL Server实例。以下transact - SQL脚本创建主密钥和证书。然后备份证书,并使用私钥保护文件。使用强密码更新脚本。

CREATE  MASTER  KEY  ENCRYPTION  BY  PASSWORD =, & # 39; * * & lt; Master_Key_Password> * * & # 39;;   CREATE  CERTIFICATE  dbm_certificate  WITH  SUBJECT =, & # 39; dbm # 39;;   BACKUP  CERTIFICATE  dbm_certificate=用FILE  & # 39;/var/opt/该软件/数据/dbm_certificate.cer& # 39;   WITH  PRIVATE  KEY  (   时间=FILE  & # 39;/var/opt/该软件/数据/dbm_certificate.pvk& # 39;,   时间=ENCRYPTION  BY  PASSWORD  & # 39; * * & lt; Private_Key_Password> * * & # 39;   );


将证书和私钥拷贝到所有可用副本的服务器上的相同位置。

cd /var/opt/该软件/数据   scp  dbm_certificate。*, root@ * * & lt; node2> * *:/var/opt/该软件/数据/


在每个目标服务器上,授予该用户访问这些文件的权限。

cd /var/opt/该软件/数据   chown 该软件:mssql  dbm_certificate。*

<强>

<强>在辅助服务器上创建证书

以下transact - SQL脚本根据在主SQL Server副本上创建的备份创建主密钥和证书。使用强密码更新脚本。解密密码与在此前的步骤中创建.pvk文件使用的密码相同。

CREATE  MASTER  KEY  ENCRYPTION  BY  PASSWORD =, & # 39; * * & lt; Master_Key_Password> * * & # 39;;   CREATE  CERTIFICATE  dbm_certificate   时间=得到FILE  & # 39;/var/opt/该软件/数据/dbm_certificate.cer& # 39;   WITH  PRIVATE  KEY  (   时间=FILE  & # 39;/var/opt/该软件/数据/dbm_certificate.pvk& # 39;,   时间=DECRYPTION  BY  PASSWORD  & # 39; * * & lt; Private_Key_Password> * * & # 39;   );

<强>

<强>在所有节点上创建数据库镜像端点

(可选)可以包含IP地址LISTENER_IP=(0.0.0.0)。侦听器IP地址必须是IPv4地址。还可以使用0.0.0.0。

如果配置的节点是仅配置副本,唯一有效的值为=见证作用。

对于SQL Server 2017版本中,支持数据库镜像终结点的唯一身份验证方法是证书。

CREATE  ENDPOINT  [Hadr_endpoint]   AS  TCP  (LISTENER_IP =, (0.0.0.0), LISTENER_PORT =, * * & lt; 5022年在* *)   FOR  DATA_MIRRORING  (   ROLE =,   时间=AUTHENTICATION  CERTIFICATE  dbm_certificate,   时间=ENCRYPTION  REQUIRED  ALGORITHM  AES   );   ALTER  ENDPOINT  [Hadr_endpoint], STATE =,开始;   GRANT  CONNECT 提醒端点:[Hadr_endpoint],用[dbm_login];

SQL Server 2017 AlwaysOn Linux上配置和维护(8)