Centos 7部署.NET 8網站項目

簡介

本文詳細介紹了在CentOS 7系統上部署.NET 8網站項目的完整流程,主要內容包括:系統版本更新與檢查、PostgreSQL數據庫的安裝配置(含防火墻設置、數據庫初始化及遠程訪問配置)、Nginx Web服務的安裝與防火墻配置。文章通過分步命令演示和效果截圖,詳細說明了關鍵操作步驟,如服務啟動與自啟設置、數據庫密碼修改、Nginx反向代理配置等,為在Linux環境下部署.NET項目提供了完整的技術參考。

1、更新系統版本

yum -y update

2、查看Centos系統版本

lsb_release -a

命令執行效果如下:
查看Centos系統版本

2.1、使用 hostnamectl 命令檢查 CentOS 版本

要獲取 CentOS 操作系統的分支號,可以使用 hostnamectl 命令,如下所示。此命令將打印 CentOS 操作系統所需的所有詳細信息:

hostnamectl

命令執行效果如下:
使用 hostnamectl 命令檢查 CentOS 版本

3、安裝PostgreSQL

PostgreSQL是一個功能強大的 開源 的關系型數據庫,底層基于C實現。
PostgreSQL使用的開源協議是PostgreSQL許可證,也被稱為PostgreSQL開放源碼許可證。這是一種自由軟件許可證,基于BSD許可證。該許可證允許用戶自由地使用、修改和分發PostgreSQL數據庫管理系統的源代碼。它還允許用戶將PostgreSQL用于商業目的,并且沒有強制性的要求或限制。這使得PostgreSQL成為一個受歡迎的開源數據庫解決方案。
PostgreSQL的名字由兩部分組成:Post和SQL。
"Post"是指Postgres,這是PostgreSQL的前身。Postgres是由Michael Stonebraker和他的團隊在加州大學伯克利分校開發的一個關系數據庫管理系統。它是早期關系數據庫系統的一個重要研究項目。
"SQL"代表結構化查詢語言(Structured Query Language),它是一種用于管理和操作關系數據庫的標準語言。PostgreSQL是一個完全支持SQL的關系數據庫管理系統。
因此,將這兩個部分合并在一起,就得到了PostgreSQL這個名字。

3.1、設置防火墻

3.1.1、開啟防火墻

sudo systemctl start firewalld

3.1.2、開放PostgreSQL默認端口防火墻

sudo firewall-cmd --zone=public --add-port=5432/tcp --permanent

命令執行效果如下:
開放PostgreSQL默認端口防火墻

3.1.3、重啟防火墻服務

sudo firewall-cmd --reload

命令執行效果如下:
重啟防火墻服務

3.2、查看所有可用的軟件包和版本

PostgreSQL 軟件倉庫包含所有可用的 PostgreSQL 版本的信息。您可以使用以下命令查看所有可用的軟件包和版本:

sudo yum list postgresql*

命令執行效果如下:查看所有可用的軟件包和版本

3.3、使用命令查看PostgreSQL是否已安裝

3.3.1、使用rpm命令(適用于Red Hat/CentOS系統)查看PostgreSQL是否已安裝

對于基于Red Hat/CentOS的系統,可以使用rpm命令來檢查某個軟件包是否已安裝。可以通過執行以下命令來檢查PostgreSQL是否已安裝:
如果該命令返回帶有”postgresql”關鍵字的軟件包列表,則表示PostgreSQL已安裝。否則,沒有任何輸出表示未安裝。

rpm -qa | grep postgresql

3.3.2、使用pg_config命令

pg_config是一個用于獲取關于當前已安裝的PostgreSQL的信息的命令。我們可以在終端中執行以下命令來檢查是否安裝了PostgreSQL:

pg_config --version

如果該命令返回版本號,則表示PostgreSQL已安裝。否則,將顯示命令未找到或包括PostgreSQL的相關信息。

3.4、安裝

sudo yum install postgresql-server

3.5、初始化PostgreSQL數據庫

sudo -u postgres initdb -D /var/lib/pgsql/data

命令執行效果如下:
初始化PostgreSQL數據庫

3.6、重新啟動 PostgreSQL 服務

sudo systemctl restart postgresql

3.7、設置開機自啟(如果尚未設置)

sudo systemctl enable postgresql

3.8、驗證安裝

登錄到 PostgreSQL 數據庫,以驗證安裝是否成功。

sudo -u postgres psql

命令執行效果如下:
登錄到 PostgreSQL 數據庫,以驗證安裝是否成功

3.9、修改postgres用戶的登錄密碼

因為安裝之后,用戶“postgres”默認沒有登錄密碼,所以我們需要使用命令進行密碼修改。

alter user postgres with password 'a12345678@';

命令執行效果如下:
在這里插入圖片描述

3.10、設置外部IP能夠連接本機的PostgreSQL數據庫

3.10.1、修改pg_hba.conf配置文件

執行命令,按“i”進入編輯模式:將postgresql.conf配置文件中的,新增一行“host all all 0.0.0.0/0 trust”,設置完成之后,按“ESC”,在輸入“:wq”進行強制保存并退出。

vi /var/lib/pgsql/data/pg_hba.conf

命令執行效果如下:
修改pg_hba.conf配置文件

3.10.1、修改postgresql.conf配置文件

執行命令,按“i”進入編輯模式:將postgresql.conf配置文件中的listen_addresses屬性設置為"*",設置完成之后,按“ESC”,在輸入“:wq”進行強制保存并退出。

vi /var/lib/pgsql/data/postgresql.conf

命令執行效果如下:修改postgresql.conf配置文件

3.11、重新啟動 PostgreSQL 服務

sudo systemctl restart postgresql

3.12、命令集

# 檢查服務狀態
sudo systemctl status postgresql# 啟動服務
sudo systemctl start postgresql# 停止服務
sudo systemctl stop postgresql# 重啟服務
sudo systemctl restart postgresql# 設置開機自啟動
sudo systemctl enable postgresql# 禁用開機自啟動
sudo systemctl disable postgresql

4、安裝Nginx Web 服務

Nginx (engine x) 是一個高性能的HTTP和反向代理web服務器,同時也提供了IMAP/POP3/SMTP服務。Nginx是由伊戈爾·賽索耶夫為俄羅斯訪問量第二的Rambler.ru站點(俄文:Рамблер)開發的,第一個公開版本0.1.0發布于2004年10月4日。其將源代碼以類BSD許可證的形式發布,因它的穩定性、豐富的功能集、簡單的配置文件和低系統資源的消耗而聞名。2011年6月1日,nginx 1.0.4發布。
Nginx是一款輕量級的Web 服務器/反向代理服務器及電子郵件(IMAP/POP3)代理服務器,在BSD-like 協議下發行。其特點是占有內存少,并發能力強,事實上nginx的并發能力在同類型的網頁服務器中表現較好,中國大陸使用nginx網站用戶有:百度、京東、新浪、網易、騰訊、淘寶等。
Nginx 是高性能的 HTTP 和反向代理的web服務器,處理高并發能力是十分強大的,能經受高負 載的考驗,有報告表明能支持高達 50,000 個并發連接數。
Nginx支持熱部署,啟動簡單,可以做到7*24不間斷運行。幾個月都不需要重新啟動。

4.1、在root權限下配置防火墻

sudo firewall-cmd --add-service=http --permanent

命令執行效果如下:
在root權限下配置防火墻

sudo firewall-cmd --reload

命令執行效果如下:
重啟防火墻

4.2、在root權限下安裝Nginx

sudo yum install nginx

在這里插入圖片描述
在此處輸入“y”,回車等待安裝完成即可。
在這里插入圖片描述

4.3、啟動Nginx

sudo systemctl start nginx

4.4、將Nginx服務設置為開機自啟(尚未設置的話)

sudo systemctl enable nginx

命令執行效果如下:
將Nginx服務設置為開機自啟

4.5、設置Nginx文件上傳的大小

在使用 Nginx 進行文件上傳時,為了防止用戶上傳過大的文件,導致服務器負載過高,需要對上傳文件的大小進行限制。
要調整Nginx允許的最大上傳文件大小,主要使用的是client_max_body_size指令。該指令可以放置在不同的配置塊中,影響其作用范圍:

  1. http塊:全局生效,適用于所有虛擬主機;
  2. server塊:僅對該站點生效;
  3. location塊:僅對特定路徑生效

4.5.1、修改 Nginx 配置文件

要設置文件上傳大小限制,我們需要修改 Nginx 的配置文件。打開 Nginx 的配置文件,在config目錄下面有個nginx.conf文件,找到 http 塊,添加以下內容:

http {client_max_body_size 800m;
}

client_max_body_size 指定了上傳文件的最大大小,這里設置為:800MB。

4.6、重啟Nginx服務

sudo systemctl restart nginx

4.7、驗證web服務

Web服務器搭建完成后,可以通過如下方式驗證是否搭建成功。

4.7.1、在root權限下查看服務器的IP地址

ip a

命令執行效果如下:
查看服務器的IP地址

4.7.2、驗證web服務器是否搭建成功,用戶可選擇Linux或Windows系統進行驗證

執行如下命令,查看是否可以訪問網頁信息,服務搭建成功時,該網頁可以正常訪問

4.7.2.1、使用Linux系統驗證
curl http://10.1.12.3

命令執行效果如下:使用Linux系統驗證web服務器是否搭建成功

執行如下命令,查看命令返回值是否為0,返回值為0,說明nginx服務器搭建成功。

echo $?

命令執行效果如下:
在這里插入圖片描述

4.7.2.2、使用Windows系統驗證

打開瀏覽器,在地址欄輸入公網地址IP,如果能正常訪問網頁,說明nginx服務器搭建成功。
使用Windows系統驗證web服務器是否搭建成功

4.8、配置Nginx后無法訪問上級

錯誤日志: 1 connect() to 127.0.0.1:5163 failed (13: Permission denied) while connecting to upstream, client:
問題原因:

SELinux 限制導致的問題,因為:

  1. 服務僅監聽 IPv6(:::5163),但 Nginx 默認嘗試使用 IPv4 連接;
  2. SELinux 可能阻止 Nginx 通過 IPv4 訪問 IPv6 服務(即使是本地回環)

解決方案
永久配置 SELinux 允許 Nginx 網絡連接:

# 1、允許 Nginx 進行網絡連接(包括連接本地服務)
sudo setsebool -P httpd_can_network_connect 1# 2、允許 Nginx 使用網絡套接字
sudo setsebool -P httpd_can_network_relay 1# 3、重啟防火墻
sudo firewall-cmd --reload

5、安裝配置 .NET 環境

5.1、安裝.NET 8的SDK以及運行時

.NET 8下載官網鏈接:Download .NET 8.0 (Linux, macOS, and Windows) (microsoft.com)

5.2、查看系統支持的可用.NET 版本(通過官方源)

要查看 CentOS 7 官方源中可用的.NET 版本,可以使用以下命令:

# 安裝Microsoft官方源
sudo rpm -Uvh https://packages.microsoft.com/config/centos/7/packages-microsoft-prod.rpm# 列出可用的.NET SDK包
sudo yum list available dotnet-sdk*# 列出可用的.NET運行時包
sudo yum list available aspnetcore-runtime*
sudo yum list available dotnet-runtime*

5.3、新建存放安裝.NET的文件夾“software”

mkdir /自定義的目錄路徑/software

再向“software”文件夾中新建一個存放.NET SDK的安裝目錄“dotnet8”以及一個存放.NET 運行時的安裝目錄“dotnet8run”;

mkdir /自定義的目錄路徑/software/dotnet8 && mkdir /自定義的目錄路徑/software/dotnet8run

5.4、解壓并安裝.NET SDK

tar -zxvf bak/dotnet-sdk-你下載SDK的版本號-linux-x64.tar.gz -C /自定義的目錄路徑/software/dotnet8

5.4.1、添加環境變量

全局永久、所有用戶有效,執行以下命令進行環境變量文件修改:

sudo vi /etc/profile

在輸入命令之后,按“i”進行插入操作,在文件末尾,添加一下內容:

export PATH=$PATH:/自定義的目錄路徑/software/dotnet8

確認無誤之后,按“ESC”,再輸入:“:wq”保存并退出。(如果錯了,或者想重新寫入,可以按“ESC”,再輸入:“:q!”不保存并強制退出)。

5.4.2、更新profile文件

source /etc/profile

5.4.3、查看環境變量

echo $PATH

5.5、解壓安裝.NET 運行時

tar -zxvf bak/aspnetcore-runtime-你下載運行時的版本號-linux-x64.tar.gz -C /自定義的目錄路徑/software/dotnet8run

安裝完成之后,可使用命令“dotnet --info”查看SDK以及運行時。

5.6、錯誤解決

1、dotnet: /lib64/libstdc++.so.6: version GLIBCXX_3.4.20' not found (required by dotnet) dotnet: /lib64/libstdc++.so.6: version GLIBCXX_3.4.21’ not found (required by dotnet)

這可能是因為CentOS版本太低或者缺少libstdc++.so.6 版本 GLIBCXX_3.4.20 和 GLIBCXX_3.4.21

解決方案如下:

cd /usr/local/lib64/# 下載最新版本的`下載最新版本的libstdc.so_.6.0.26`
wget http://www.vuln.cn/wp-content/uploads/2019/08/libstdc.so_.6.0.26.zip# 解壓
unzip libstdc.so_.6.0.26.zip# 將下載的最新版本拷貝到 /usr/lib64
cp libstdc++.so.6.0.26 /usr/lib64
cd  /usr/lib64# 查看 /usr/lib64下libstdc++.so.6鏈接的版本
ls -l | grep libstdc++# 使用 cp -a 保留軟鏈接屬性(不跟隨鏈接復制目標文件),備份為 libstdc++.so.6.bak
sudo cp -a /usr/lib64/libstdc++.so.6 /usr/lib64/libstdc++.so.6.bak# 刪除原先的軟連接(不放心可以備份)
rm libstdc++.so.6# 使用最新的庫建立軟連接
ln -s libstdc++.so.6.0.26 libstdc++.so.6# 查看新版本,成功
strings /usr/lib64/libstdc++.so.6 | grep GLIBCXX

6、部署.NET Core Web網站項目

將.NET Web網站項目進行發布,再使用XFTP上傳至服務器下自己創建的目錄下。

6.1、修改Nginx的配置文件

sudo vi /etc/nginx/nginx.conf
  • 在“location”下添加以下內容:

location / {proxy_pass http://localhost:5163;  #自己發布的.NET 項目所運行的url,若不知道在哪里查看,可在Windows發布的文件夾中找到項目.exe的文件,雙擊后,會彈出控制臺窗口,里面有個urlproxy_http_version 1.1;proxy_set_header Upgrade $http_upgrade;proxy_set_header Connection keep-alive;proxy_set_header Host $host;proxy_cache_bypass $http_upgrade;root   /自定義目錄/wwwroot;    #自己的項目路徑,.NET Core的Web項目需要定位到“wwwroot”文件
}
  • 將“server_name”修改成:公網IP、域名或_(“_”表示任意域名或IP)即可;
  • 將“proxy_pass http”修改成:自己發布的.NET 項目所運行的url即可(若不知道在哪里查看,可在Windows發布的文件夾中找到項目.exe的文件,雙擊后,會彈出控制臺窗口,里面有個url);
  • 確認無誤之后,按“ESC”,再輸入:“:wq”保存并退出。(如果錯了,或者想重新寫入,可以按“ESC”,再輸入:“:q!”不保存并強制退出)。

6.2、重啟Nginx

sudo systemctl restart nginx

6.3、創建.NET Core Web項目系統服務

mkdir:創建文件夾;touch:創建文件
在“/etc/systemd/system/”目錄下創建一個新的服務文件,例如 web.service:

touch /etc/systemd/system/自定義的web服務名稱.service

6.3.1、修改服務文件內容

sudo vi /etc/systemd/system/自定義的web服務名稱.service

在輸入命令之后,按“i”進行插入操作,在“ExecStart”末尾,添加以下內容: /自定義的目錄路徑/software/dotnet8/dotnet

[Unit]
Description=ASP.NET Core applications
After=network.target[Service]
WorkingDirectory=/自定義的網站項目目錄路徑/
ExecStart=/自定義的目錄路徑/software/dotnet8/dotnet  自定義的網站項目目錄路徑/netproject.dll --urls "http://*:5163"
Restart=always
RestartSec=10
KillSignal=SIGINT
SyslogIdentifier=project
Environment=ASPNETCORE_ENVIRONMENT=Production
Environment=DOTNET_PRINT_TELEMETRY_MESSAGE=false[Install]
WantedBy=multi-user.target

下面是此內容的一些關鍵方面:

  • WorkingDirectory 是發布應用程序的目錄。
  • ExecStart 是啟動應用程序的實際命令。
  • Restart=always 不言而喻。 如果由于某種原因(無論是手動還是崩潰)而停止,則始終會啟動此過程。
  • RestartSec=10 也是不言而喻的。 進程停止后,它將在經過 10 秒后啟動。
  • SyslogIdentifier 很重要。 它表示“系統日志標識符”。 有關守護程序的信息以此名稱記錄在系統日志中。 還可以使用此標識符來查找進程的 PID。
  • User 是管理服務的用戶。 它應存在于系統中,并具有應用程序文件的相應所有權。
  • 可以在服務文件中設置任意數量的環境變量。

6.3.2、重載配置文件

sudo systemctl daemon-reload

6.3.3、啟動Web服務

執行以下命令啟動 web 服務:

sudo systemctl start 自定義的web服務名稱.service

6.3.4、設置Web服務開機自啟動

如果你希望 web 在系統啟動時自動啟動,可以執行以下命令設置開機自啟動:

sudo systemctl enable 自定義的web服務名稱.service

6.3.5、其他命令

#1、開機自啟
sudo systemctl enable 自定義的web服務名稱.service#2、啟動服務
sudo systemctl start 自定義的web服務名稱.service#3、查看狀態
sudo systemctl status 自定義的web服務名稱.service#4、關閉服務
sudo systemctl stop 自定義的web服務名稱.service#5、重啟服務
sudo systemctl restart 自定義的web服務名稱.service

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/917083.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/917083.shtml
英文地址,請注明出處:http://en.pswp.cn/news/917083.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Windows 11下IDEA中使用git突然變得卡慢及解決辦法

1. 表象 使用idea的git進行update、commit、push等操作時,極度卡慢。需等待幾十秒到幾分鐘。修改文件后,git刷新也不及時。update命令有時候無法點擊。 2.解決方法 停止PC Manager ServiceCtrl shift esc : 打開任務管理器找到服務: 服務中…

MyBatis 的兩級緩存機制

現實分布式項目中會不會開啟mybatis的二級緩存? 在分布式項目中,是否開啟MyBatis的二級緩存需結合具體場景和技術方案綜合評估。 以下是關鍵考量因素: 一、默認二級緩存的局限性 隔離性問題:MyBatis默認的二級緩存基于HashMap實…

分布式原子序列(Distributed Atomic Sequence)

這段內容是關于 Apache Ignite 中的 分布式原子序列(Distributed Atomic Sequence),也就是一個分布式 ID 生成器。我們來一步步深入理解它的原理、用途和使用方式。🔹 一、核心概念:什么是分布式 ID 生成器&#xff1f…

VSCode——插件分享:Markdown PDF

該插件可以將markdown編寫內容轉成PDF。 ? 支持渲染圖表、代碼高亮、表格等 Markdown 內容 安裝 Visual Studio Code安裝插件:Markdown PDF 打開擴展商店,搜索 Markdown PDF 并安裝 打開你的 .md 文件右鍵 → 點擊 Markdown PDF: Export (pdf)自動生成 …

rust-模塊樹中引用項的路徑

模塊樹中引用項的路徑 為了告訴 Rust 在模塊樹中如何找到某個項,我們使用路徑,就像在文件系統中導航時使用路徑一樣。要調用一個函數,我們需要知道它的路徑。 路徑有兩種形式: 絕對路徑是從 crate 根開始的完整路徑&#xff1b…

mac n切換node版本報錯Bad CPU type in executable

該node版本僅支持intel芯片,不支持Apple 芯片(M1/M2/M3/M4),所以需要下載Rosetta 2 ,讓node可以在搭載 Apple 芯片的 Mac 上運行。 env: node: Bad CPU type in executable /opt/homebrew/bin/n: line 753: /usr/local…

經典算法之美:冒泡排序的優雅實現

經典算法之美:冒泡排序的優雅實現基本概念工作原理介紹具體實現代碼實現總結基本概念 冒泡排序是一種簡單的排序算法,通過重復比較相鄰的元素并交換它們的位置來實現排序。它的名稱來源于較小的元素像氣泡一樣逐漸“浮”到數組的頂端。 工作原理 介紹…

click和touch事件觸發順序 糊里糊涂解決的奇怪bug

問題詳情 在嵌入式硬件設備里,測試 “點擊input密碼框,彈出第三方自帶鍵盤,點擊密碼框旁的小眼睛,切換輸入內容加密狀態,鍵盤收起/彈出狀態不變” 的功能邏輯;實際情況卻是 “點擊鍵盤或input框之外的任何地…

【0基礎PS】Photoshop (PS) 理論知識

目錄前言一、Photoshop 核心概念與定位?二、圖像基礎理論?三、圖層理論:PS 的核心工作機制?四、選區與蒙版?五、調色核心理論?六、常用文件格式?學習建議?總結前言 在數字圖像編輯領域,Photoshop(簡稱 PS)無疑是行業標桿級…

數據庫 設計 pdm comment列表顯示和生成建表sql

按如下步驟 生成見建表語句 comment非空使用comment 生成字段注釋, 空的時候使用name 生成字段注釋 sql腳本模板編輯 參考 PowerDesigner生成mysql字段comment 注釋-騰訊云開發者社區-騰訊云 版本不同這邊的設置不同 這個勾打上

嵌入式基礎知識復習(C語言)

知識擴展7.28 嵌入式產品特點、開發環境、計算機組成、Linux終端初識1、嵌入式產品。特點:低功耗、根據用戶需求定制。硬件:arm處理器。軟件:Linux操作系統arm架構:精簡指令集、低功耗(移動/嵌入式)。 …

LeetCode Hot 100 尋找兩個正序數組的中位數

給定兩個大小分別為 m 和 n 的正序(從小到大)數組 nums1 和 nums2。請你找出并返回這兩個正序數組的 中位數 。算法的時間復雜度應該為 O(log (mn)) 。示例 1:輸入:nums1 [1,3], nums2 [2] 輸出:2.00000 解釋&#x…

監控場景視頻質量異常修復:陌訊動態增強算法實戰解析

原創聲明:本文為原創技術解析,核心技術參數與架構引用自《陌訊技術白皮書》,禁止未經授權轉載。一、行業痛點:視頻質量異常的連鎖難題在安防監控、智慧交通等場景中,視頻質量異常已成為 AI 分析的主要瓶頸。據行業報告…

一個簡單的mvvm示例與數據雙向綁定

這就是一個簡單的數據雙向綁定的demo,參考即可(cmakelist我沒按他的寫,但是大差不差) 目錄 1.示例demo File: CMakeLists.txt File: main.cpp File: model/physiologymodel.cpp File: viewmodel/physiologyviewmodel.h Fil…

哈希的概念及其應用

哈希的概念及其應用哈希概念常見的哈希其他哈希字符串哈希(算法競賽常用)字符串哈希OJP3370 【模板】字符串哈希 - 洛谷P10468 兔子與兔子 - 洛谷哈希沖突哈希函數設計原則哈希沖突解決方法—閉散列閉散列的線性探測閉散列的二次探測哈希沖突解決方法—開…

【分布式的個人博客部署】

綜合項目-搭建個人博客一、運行環境二、基礎配置三、業務需求第一步:準備工作1、配置靜態IP2、修改hosts映射3、開啟防火墻4、時間同步5、配置免密ssh登錄第二步:環境搭建1、Server-web端安裝LNMP環境軟件2、Server-NFS-DNS端上傳博客軟件3、Server-NFS-…

藍橋杯----DS18B20溫度傳感器

(二)、溫度傳感器1、One-Wire總線One-Wire總線利用一根線實現雙向通信。因此其協議對時序的要求較嚴格,如應答等時序都有明確的時間要求。基本的時序包括復位及應答時序、寫一位時序讀一位時序。單總線即只有一根數據線,系統中的數…

科技賦能成長 腦力啟迪未來

——西安臻昊科技與秦嶺云數智共筑腦科學教育新生態 2025年6月26日,西安臻昊科技(集團)有限責任公司與秦嶺云數智(陜西)科技有限公司正式簽署腦象評測技術戰略合作協議,雙方將依托技術互補與資源協同&#…

Docker部署的PostgreSQL慢查詢日志配置指南

目錄 1. 核心步驟 1.1 修改配置文件 1.2 動態加載配置(無需重啟容器) 1.3 驗證配置生效 1.3.1 查看參數 1.3.2 執行測試慢查詢 2. 高級用法 2.1 使用分析工具 2.2 啟用擴展 3. 注意事項 3.1 日志目錄權限 3.2 性能影響 配置Docker部署的Pos…

C# 入門教程(四)委托詳解

文章目錄1、什么是委托2、委托的聲明(自定義委托)3、委托的使用3.1 實例:把方法當作參數傳給另一個方法3.2 注意:難精通易使用功能強大東西,一旦被濫用則后果非常嚴重4、委托的高級使用4.1 多播(multicast)委托4.2隱式…