發表文章

[MSSQL] 資料庫更新定序時,無法取得獨佔權

-- 設定資料庫為單一使用者模式,並強制終止所有其他連線 ALTER DATABASE [dbname] SET SINGLE_USER WITH ROLLBACK IMMEDIATE; -- 更改資料庫的定序 ALTER DATABASE [dbname] COLLATE Chinese_Taiwan_Stroke_CI_AS;; -- 將資料庫設定回多使用者模式 ALTER DATABASE [dbname] SET MULTI_USER;

OpenSSH SSH SFTP 架設

Windows Server 2019 以上 及 Windows 10 以上 可以在新增功能找到 OpenSSH 伺服器 安裝 其他舊版本可以在 https://github.com/PowerShell/Win32-OpenSSH/releases 下載最新檔案安裝 安裝之後, 以系統管理員身分啟動PowerShell 啟動「OpenSSH SSH Server」服務,在終端機輸入指令: Start -Service sshd 確認當前防火牆規則,指令如下 Get-NetFirewallRule -Name *ssh* 新建立防火牆規則指令 New -NetFirewallRule -Name sshd -DisplayName 'OpenSSH Server (sshd)' -Enabled True -Direction Inbound -Protocol TCP -Action Allow -LocalPort 22 測試連線: 開啟命令提示字元,在內輸入: ssh username @servername username:電腦使用者帳號,servername:電腦IP 連線時會要你輸入密碼,密碼為電腦使用者的密碼,輸入時會沒有任何反應是正常的,為了保密。 第一次連線到伺服器時,應該會看到類似下列的訊息: The authenticity of host 'servername (10.00.00.001)' can't be established. ECDSA key fingerprint is SHA256:(<a large string>). Are you sure you want to continue connecting (yes/no)? 這邊輸入 yes

[MS-SQL] 單一使用者,立即中斷SQL Server連線

針對所有SQL Server連線查出現有連線,一一刪除 EXEC sp_who KILL spid號碼 刪除指定資料庫上的所有連線,並變更為單一使用者連線模式 USE master GO ALTER DATABASE [資料庫名稱] SET SINGLE_USER WITH ROLLBACK IMMEDIATE; GO 切換回多人使用者連線模式 ALTER DATABASE [資料庫名稱] SET MULTI_USER; GO

[GIT]轉移整包git commit 至其他台主機

  先將原git的mirror整包 clone 下來 1 git clone --mirror https://git.compilerok/oldJob.git 到 gitlab 建一個空的 repo 進到專案資料夾,設定新的遠端 git repo 位置 1 2 cd oldJob .git/ git remote set-url --push origin https://Newgit.compilerok/newJob.git local 更新 remote branch,因為是新的 repo,並將本地的 origin/xxx 都刪囉。-p == --prune 1 git fetch -p origin 最後將整包 push 上去 1 git push --mirror 可以在 Gitl上看到 repo 裡有先前的所有紀錄與內容囉。

Mac OS Ventura XCode 無法使用 13.XXXX版

 Ventura 直接無法使用 XCode 13.X.X版 解決方式 直接從 Apple Developer 網站下載 Xcode 其實 Apple 官網一直有下載  .xip  壓縮檔版本 Xcode 的連結,但是藏得有點深。 下載頁面的首頁是  https://developer.apple.com/downloads 。 透過 xcode-install 套件管理 Xcode command line  xcode-install   Ruby 套件。 安裝 Xcode 11.0 : gem install xcode-install xcversion install 11.0 就會登入(使用跟 Fastlane 一樣的 Keychain 機制)、下載,並且解壓縮。 甚至可以列出所有可下載與已安裝的版本: xcversion update xcversion list 安裝或下載完成後, 不要直接點xcode.app 請用"顯示套件內容" 點選/Applications/Xcode_13.4.1.app/Contents/MacOS

[asp.net] 無法載入檔案或組件 'Antlr3.Runtime' 或其相依性的其中之一

無法載入檔案或組件 'Antlr3.Runtime' 或其相依性的其中之一。 存取被拒 ASP.NET MVC 4 讓使用者可以上傳檔案,存到另台SERVER 除了設定帳號外 C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files 這個目錄也要賦予該帳號的寫入權限 

[Asp.net] Web.config 加密

 用 dotnet內建的 aspnet_regiis.exe 就可以 加密 切說路徑 cd /d c:\Windows\Microsoft.NET\Framework\v4.0.30319 裡面應該就有 aspnet_regiis.exe 連線字串∶ 加密 aspnet_regiis.exe -pef connectionStrings "您的專案位置 " 解密 aspnet_regiis.exe -pdf connectionStrings "您的專案位置"  AppSetting∶ 加密 aspnet_regiis.exe -pef appSettings "您的專案位置 " 解密 aspnet_regiis.exe -pdf appSettings "您的專案位置"  Identity∶ 加密 aspnet_regiis.exe -pef "system.web/identity" "您的專案位置 " 解密 aspnet_regiis.exe -pdf " system.web/identity"  "您的專案位置"  授與指定帳號執行iis權限  aspnet_regiis -ga User1 C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files

OpenSSL PFX to Key and Crt

PFX 轉換成 crt 與 key 檔  openssl pkcs12 -in [yourfilename.pfx] -clcerts -nokeys -out [certificatename.crt] openssl pkcs12 -in [yourfilename.pfx] -nocerts -out [keyfilename-encrypted.key]

Linux 排程crontab 排程工作

 查看 現有排程 crontab -l 查看指定 user排程 sudo crontab -u d -l MIN HOUR DOM MON DOW CMD # ┌───────────── 分鐘 (0 - 59) # │ ┌─────────── 小時 (0 - 23) # │ │ ┌───────── 日 (1 - 31) # │ │ │ ┌─────── 月 (1 - 12) # │ │ │ │ ┌───── 星期幾 (0 - 7,0 是週日,6 是週六,7 也是週日) # │ │ │ │ │ # * * * * * /path/to/command # 每天早上 8 點 30 分執行 30 08 * * * /home/d/script.sh --your --parameter # 每週日下午 6 點 30 分執行 30 18 * * 0 /home/d/script.sh --your --parameter # 每週日下午 6 點 30 分執行 30 18 * * Sun /home/d/script.sh --your --parameter # 每年 6 月 10 日早上 8 點 30 分執行 30 08 10 06 * /home/d/script.sh --your --parameter # 每月 1 日、15 日、29 日晚上 9 點 30 分各執行一次 30 21 1,15,29 * * /home/d/script.sh --your --parameter # 每隔 10 分鐘執行一次 */10 * * * * /home/d/script.sh --your --parameter # 從早上 9 點到下午 6 點,凡遇到整點就執行 00 09-18 * * * /home/d/script.sh --your --parameter 修改現有排程 crontab -e

linux 掛載網路磁碟機

確認是否有連線網路磁碟機 df -k 確認是否有正確掛載資訊 vi /etc/fstab 確認是否有正確掛載資訊 /dev/mapper/centos-swap swap                     swap     defaults         0 0 如沒有,請補上資訊如以下 範例∶ //IP/資料夾/GitLab /media/資料夾/ cifs username=帳號,password=密碼,gid=1000,uid=1000 0 0 確認正確掛載資訊後,重新mount所有磁碟機 mount -a

[MsSQL] 查詢所有table 語法

 SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_TYPE='BASE TABLE'

[iOS,XCode,Pod] 當Pod instal 發生錯誤

圖片
開啟專案時,pod instal 發生錯誤 [!] Automatically assigning platform `iOS` with version `11.0` on target `M2Test` because no platform was specified. Please specify a platform for this target in your Podfile. See `https://guides.cocoapods.org/syntax/podfile.html#platform`. 解決方法∶ 1 打開Podfile 2 移除第二行 #platform:ios, ‘9.0’ 中的# 3 打開終端機重新 pod install [!] Couldn't determine repo type for URL: `https://cdn.cocoapods.org/`: Permission bits for '/Users/D/.netrc' should be 0600, but are 644 解決方法∶ chmod 600 ~/.netrc

[MVC] 使用 Html.Raw 從Model 產出 JSON 字串

Checkmarx 弱點:Reflected XSS All Clients 該元素的值於程式流程中沒有被正確地過濾(Filter)或驗證,並最終顯示於使用者端方法DisplayDetails()這可能為跨站腳本(Cross-Site-Scripting)攻擊 一般在輸出網頁時內嵌 JSON 轉成 JavaScript <script> var DataItem = @Html.Raw(Newtonsoft.Json.JsonConvert.SerializeObject(Model.DataItem)); </script> 但如果model 裡有含html字串,會導致XSS 風險 宣告產出如下: <script> var DataItem = @Html.Raw( Newtonsoft.Json.JsonConvert.SerializeObject(Model.DataItem, new Newtonsoft.Json.JsonSerializerSettings { StringEscapeHandling = Newtonsoft.Json.StringEscapeHandling.EscapeHtml })); </script> JsonConvert.DefaultSettings = () => new JsonSerializerSettings { StringEscapeHandling = Newtonsoft.Json.StringEscapeHandling.EscapeHtml };

[linux]查看哪個資料夾使用量最高

  使用 du -h -x --max-depth=1   查看哪個資料夾使用量最高 du -h -x --max-depth=1 刪除檔案 rm filename rm abc.txt

[MS SQL] 當.SQL 檔案太大,無法用SSMS執行解決方案

使用產生指令碼將檔案備份, 當.SQL 檔案太大, 從SSMS打開或是記事本,會當掉無法開啟 可以使用以下方法執行:  C:\Program Files\Microsoft SQL Server\130\Tools\Binn\ sqlcmd -S 資料庫IP -U 使用者名稱 -P 使用者密碼 -d 資料庫名稱 -i ".sql檔案路徑,如:「C:\…\SQL.sql" sqlcmd -S Localhost -U sa -P password -d dbname -i "C:\compilerok\compilerok.sql"

MySQL 資料庫建立,定序查詢

MySQL 資料庫都各自有一個預設編碼 (database character set) 與一個預設定序 (database collation) 的設定值.,會影響資料存取 可在建立資料庫時決定, 也可透過 ALTER 來改變。 可以透過下列方式取得設定值 mysql >   SHOW   VARIABLES   LIKE   "character_set_database" ; mysql >   SHOW   VARIABLES   LIKE   "collation_database" ; 透過產生指定碼確認: mysql >   SHOW   CREATE   DATABASE  DATABASE_NAME;

[MS-SQL] 查詢資料庫中,各table 所佔容量、筆數

  查詢語法如下  可查資料庫中,各table 所佔容量、筆數  SELECT       t . object_id ,    OBJECT_NAME ( t . object_id )  ObjectName ,    sum ( u . total_pages )   *  8 Total_Reserved_kb ,    sum ( u . used_pages )   *  8 Used_Space_kb ,    u . type_desc ,    max ( p . rows )  RowsCount FROM    sys . allocation_units  u    JOIN   sys . partitions  p  on  u . container_id  =  p . hobt_id    JOIN   sys . tables  t  on  p . object_id   =  t . object_id GROUP   BY    t . object_id ,    OBJECT_NAME ( t . object_id ),    u . type_desc ORDER   BY    Used_Space_kb  desc ,    ObjectName ;  

Windwos 2019 更新時區,無權限 change time zone not have permission

圖片
已使用adminstrator權限開啟更新時區(change time zone) 回覆無權限更新 在命令列打上: timedate.cpl  並按右鍵使用管理者權限打開即可

[MS-SQL]不同版本資料庫 使用 bacpac 進行備份/還原 (匯出資料層應用程式)

圖片
不同版本的資料庫 當要匯回至低版本時,先前可能會使用產生指令碼 可以使用  匯出資料層應用程式 進行備份/還原 備份: 至該指定資料庫,選擇匯出  匯出資料層應用程式 並跟著步驟填寫存放位置即可完成 還原: 在資料庫 選擇 匯入資料層應用程式   並選擇.bacpac檔案路徑,及目的路徑,即可移轉完成 官方參考:https://docs.microsoft.com/zh-tw/sql/relational-databases/data-tier-applications/export-a-data-tier-application?view=sql-server-ver15

找不到路徑 \bin\roslyn\csc.exe

  如果確認專案中不需要使用到 Roslyn ,可以透過 Nuget 刪除它 - 開啟Nuget Console ,輸入以下指令 PM > Uninstall - package Microsoft . CodeDom . Providers . DotNetCompilerPlatform PM > Uninstall - package Microsoft . Net . Compilers Update-Package Microsoft.CodeDom.Providers.DotNetCompilerPlatform -r