<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12
      代碼改變世界

      Zabbix 6中MSSQL by ODBC模板配置手冊

      2023-04-24 21:11  瀟湘隱者  閱讀(2665)  評論(0)    收藏  舉報

      這里介紹一下如何在Zabbix 6下面,使用默認自帶的模板MSSQL by ODBC來監控SQL Server數據庫。官方關于Template DB MSSQL By ODBC的介紹如下鏈接所示:

      https://www.zabbix.com/integrations/mssql

      這個項目對應的github地址為:

      https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates/db/mssql_odbc?at=release/6.2

      安裝ODBC

      當前安裝Zabbix 6.2的服務器為RHEL 8,具體版本為:

      # more /etc/redhat-release 
      Red Hat Enterprise Linux release 8.6 (Ootpa)

      在Zabbix Server或Zabbix Proxy Server上安裝ODBC驅動,一般來說,安裝Zabbix Server時已經安裝了unixODBC等相關包

      # yum list installed | grep unixODBC
      unixODBC.x86_64                                       2.3.7-1.el8                               @local-rhel-8-for-x86_64-appstream-rpms
      unixODBC-devel.x86_64                                 2.3.7-1.el8                               @local-rhel-8-for-x86_64-appstream-rpms

      如果沒有安裝的的話,使用下面命令安裝。

      #yum –y install unixODBC unixODBC-devel

      安裝Microsoft ODBC 18

      這里我們不打算安裝freetds這個驅動,我們安裝Microsoft ODBC 18驅動。具體可以參考下面鏈接:

      https://learn.microsoft.com/en-us/sql/connect/odbc/linux-mac/installing-the-microsoft-odbc-driver-for-sql-server?view=sql-server-ver15
      https://learn.microsoft.com/zh-cn/sql/connect/odbc/linux-mac/known-issues-in-this-version-of-the-driver?view=sql-server-ver15#connectivity

      我們去下面鏈接下載對應的安裝包:

      https://packages.microsoft.com/rhel/8/prod/

      本地安裝:

      #yum localinstall msodbcsql18-18.1.2.1-1.x86_64.rpm

      配置ODBC數據源

      檢查/etc/odbcinst.ini,你會看到已經配置了ODBC Driver信息

      [ODBC Driver 18 for SQL Server]
      Description=Microsoft ODBC Driver 18 for SQL Server
      Driver=/opt/microsoft/msodbcsql18/lib64/libmsodbcsql-18.1.so.2.1
      UsageCount=1

      具體的配置信息如下:

      # cat /etc/odbcinst.ini
      [PostgreSQL]
      Description=ODBC for PostgreSQL
      Driver=/usr/lib/psqlodbcw.so
      Setup=/usr/lib/libodbcpsqlS.so
      Driver64=/usr/lib64/psqlodbcw.so
      Setup64=/usr/lib64/libodbcpsqlS.so
      FileUsage=1

      [MySQL]
      Description=ODBC for MySQL
      Driver=/usr/lib/libmyodbc5.so
      Setup=/usr/lib/libodbcmyS.so
      Driver64=/usr/lib64/libmyodbc5.so
      Setup64=/usr/lib64/libodbcmyS.so
      FileUsage=1

      [FreeTDS]
      Description=Free Sybase & MS SQL Driver
      Driver=/usr/lib/libtdsodbc.so
      Setup=/usr/lib/libtdsS.so
      Driver64=/usr/lib64/libtdsodbc.so
      Setup64=/usr/lib64/libtdsS.so
      Port=1433

      [MariaDB]
      Description=ODBC for MariaDB
      Driver=/usr/lib/libmaodbc.so
      Driver64=/usr/lib64/libmaodbc.so
      FileUsage=1

      [Oracle]
      Description=ODBC  for Oracle
      Driver=/usr/lib/oracle/19.17/client64/lib/libsqora.so.19.1

      [ODBC Driver 18 for SQL Server]
      Description=Microsoft ODBC Driver 18 for SQL Server
      Driver=/opt/microsoft/msodbcsql18/lib64/libmsodbcsql-18.1.so.2.1
      UsageCount=1

      在/etc/odbc.ini中配置數據源,一般是你要監控的SQL Server數據庫服務器。我們的一個例子如下所示:

      [TEST]   ##指定的被監控的數據庫名稱,最好使用數據庫服務器的機器名稱
      Driver = ODBC Driver 18 for SQL Server
      Server = 192.168.7.115   ##服務器的IP地址
      Port = 1433       
      Database = master

      注意,建議你加上TrustServerCertificate選項,具體配置如下所示,如果不加這個選項,你很有可能遇到錯誤2。

      樣例1:

      [TEST]
      Driver = ODBC Driver 18 for SQL Server
      Server = 192.168.7.115
      Port = 1433
      Database = master
      TrustServerCertificate = Yes

      樣例2:

      [TEST2]
      Driver = ODBC Driver 18 for SQL Server
      Server = 192.168.7.116,14033
      Port = 14033
      Database = master
      TrustServerCertificate = Yes

      然后測試驗證是否可以連接數據庫,用具體的數據庫賬號密碼替換username, password

      # isql -v TEST username password
      +---------------------------------------+
      | Connected!                            |
      |                                       |
      | sql-statement                         |
      help [tablename]                      |
      | quit                                  |
      |                                       |
      +---------------------------------------+
      SQL>

      配置zabbix監控

      在主機的配置中添加模板“MSSQL by ODBC”,然后選擇“宏“,點擊”繼承以及主機宏“,然后分別給下面三個宏輸入相關值

      {$MSSQL.DSN}
      {$MSSQL.PASSWORD}
      {$MSSQL.USER}

      注意事項

      1:你必須事先在被監控的SQL Server數據庫上面創建相關賬號并授權。如下所示:

      USE [master]
      GO
      CREATE LOGIN [zbx_monitor] WITH PASSWORD=N'*******', DEFAULT_DATABASE=[master], CHECK_EXPIRATION=OFF, CHECK_POLICY=OFF
      GO
      USE [msdb]
      GO
      CREATE USER [zbx_monitor] FOR LOGIN [zbx_monitor]
      GO
      USE [master]
      GO
      GRANT VIEW SERVER STATE TO [zbx_monitor];
      GRANT VIEW ANY DEFINITION TO  [zbx_monitor];
      USE [msdb]
      GO
      GRANT SELECT ON msdb.dbo.sysjobs TO zbx_monitor;
      GRANT SELECT ON msdb.dbo.sysjobservers TO zbx_monitor;
      GRANT SELECT ON msdb.dbo.sysjobactivity TO zbx_monitor;
      GRANT EXECUTE ON msdb.dbo.agent_datetime TO zbx_monitor;

      2:你輸入了對應的賬號密碼后,最好點擊右邊的T,然后選擇密文模式(抑或先選擇密文模式),這樣不會顯示賬號密碼的明文了。這樣比較安全。如下截圖所示:

      選擇密文保存后,你再次打開查看,此時密碼以密文保存。無法查看明文密碼了。

      配置完成后,你要檢查相關的監控選項,自動發現規則下的數據庫監控是否正常,有沒有一些問題出現。如果配置OK,Zabbix就會自動采集數據了。

      配置可能遇到的錯誤:

      錯誤1:

      Cannot connect to ODBC DSN: [SQL_ERROR]:[HYT00][0][[unixODBC][Microsoft][ODBC Driver 18 for SQL Server]Login timeout expired]|[08001][258][[unixODBC][Microsoft][ODBC Driver 18 for SQL Server]TCP Provider: Error code 0x102]|[08001][258][[unixODBC][Microsoft][ODBC Driver 18 for SQL Server]A network-related or instance-specific error has occurred while establishin]

      分析: 遇到這個問題是因為防火墻屏蔽了1433端口(也有可能是其他端口,默認是1433,根據實際情況確認)導致,找系統管理員或網絡管理人員開放1433端口即可解決。

      可以使用下面命令驗證端口是否開放。

      #telnet 192.168.xxx.xxx 1433 

      如果端口是正常的情況下,依然報下面錯誤

      Cannot connect to ODBC DSN: [SQL_ERROR]:[HYT00][0][[unixODBC][Microsoft][ODBC Driver 18 for SQL Server]Login timeout expired]|[08001][258][[unixODBC][Microsoft][ODBC Driver 18 for SQL Server]TCP Provider: Error code 0x102]|[08001][258][[unixODBC][Microsoft][ODBC Driver 18 for SQL Server]A network-related or instance-specific error has occurred while establishin]

      那么需要進一步排查,例如,我遇到的案例,是因為odbc配置問題導致,如下所示

      驗證SQL是否能連接

      # isql -v TEST2 xxxxx xxxx
      [S1T00][unixODBC][Microsoft][ODBC Driver 18 for SQL Server]Login timeout expired
      [08001][unixODBC][Microsoft][ODBC Driver 18 for SQL Server]TCP Provider: Error code 0x102
      [08001][unixODBC][Microsoft][ODBC Driver 18 for SQL Server]A network-related or instance-specific error has occurred while establishing a connection to SQL Server. Server is not found or not accessible. Check if instance name is correct and if SQL Server is configured to allow remote connections. For more information see SQL Server Books Online.
      [ISQL]ERROR: Could not SQLConnect

      /etc/odbc.ini中odbc配置如下所示:

      [TEST2]
      Driver = ODBC Driver 18 for SQL Server
      Server = 192.168.7.116
      Port = 14033
      Database = master
      TrustServerCertificate = Yes

      改為下面配置就正常了,似乎參數Port不生效。

      [TEST2]
      Driver = ODBC Driver 18 for SQL Server
      Server = 192.168.7.116,14033
      Port = 14033
      Database = master
      TrustServerCertificate = Yes

      錯誤2:

      Cannot connect to ODBC DSN: [SQL_ERROR]:[08001][-1][[unixODBC][Microsoft][ODBC Driver 18 for SQL Server]SSL Provider: [error:1416F086:SSL routines:tls_process_server_certificate:c]|[08001][-1][[unixODBC][Microsoft][ODBC Driver 18 for SQL Server]Client unable to establish connection]

      遇到這個錯誤是因為加密使用的是數據庫上的證書。這個證書需要通過證書機構的驗證,除非設置了信任證書的屬性(SQL_COPT_SS_TRUST_SERVER_CERTIFICATE, SQL_TRUST_SERVER_CERTIFICATE_YES)或者,鏈接字符串包含TrustServerCertificate=yes。只要其中任意一項是 true,并且數據庫上沒有證書的話,那么數據庫服務器就能用自己生成并簽名的證書來加密鏈接。

      修改/etc/odbc.ini配置文件,增加紅色部分(TrustServerCertificate = Yes)即可解決問題。

      # cat /etc/odbc.ini
      [TEST]
      Driver = ODBC Driver 18 for SQL Server
      Server = 192.168.63.115
      Port = 1433
      Database = master
      TDS_Version = 8.0
      TrustServerCertificate = Yes
      主站蜘蛛池模板: 成人免费无码av| 国产jizzjizz视频| 亚州中文字幕一区二区| 国产精品无码久久久久| 久久精品第九区免费观看| 久久国产精品成人影院| 欧洲码亚洲码的区别入口| 石门县| 精品人妻av中文字幕乱| 亚洲最大日韩精品一区| 午夜福利在线观看6080| 久久国产免费直播| 大香伊蕉在人线国产免费| 亚洲女女女同性video| 国产精品va无码一区二区| 熟女精品视频一区二区三区| 日本黄漫动漫在线观看视频| 国产亚洲av夜间福利香蕉149| 人妻丝袜无码专区视频网站| 国产精品va无码一区二区| 亚洲av日韩av综合在线观看| 亚洲成a∨人片在线观看不卡| 国产AV无码专区亚洲AWWW| 宅男久久精品国产亚洲av麻豆| 国产精品普通话国语对白露脸| 日韩狼人精品在线观看| 青青草一区在线观看视频| 久久精品娱乐亚洲领先| 九九热在线这里只有精品| 无码人妻久久久一区二区三区| 中文字幕av日韩有码| 性欧美牲交在线视频| 国产精品国产三级国快看| 午夜在线欧美蜜桃| 亚洲高清国产拍精品熟女| 日韩精品久久久肉伦网站| 阜新| 国产精品美女www爽爽爽视频| 亚洲综合一区国产精品| 男女做aj视频免费的网站| 一本无码在线观看|