Go SQLCMD는 Windows 기본 버전보다 느립니까?
PHP 편집자 Xiaoxin님, 데이터베이스를 관리하고 운영하기 위해 SQLCMD 도구를 자주 사용하시나요? Windows 기본 버전과 Go SQLCMD의 성능 차이를 비교해 본 적이 있나요? 이런 질문이 있다면 오늘 이 주제에 대해 토론해 보겠습니다. 이 기사에서는 이 두 버전의 성능을 비교하고 Go SQLCMD가 기본 Windows 버전보다 느린지 여부에 대한 답을 제공합니다. 한 번 보자!
질문 내용
Windows 로컬sqlcmd
在本地 SQL Server 数据库上运行脚本。我有一组脚本文件,用于创建数据库、添加表和索引、填充域数据、添加存储过程等。运行脚本是通过每个文件执行一个 sqlcmd -i <file>.sql
을 사용하여 완료했습니다. 이것은 잘 작동하고 충분히 빠릅니다.
sqlcmd
의 새로운 Go 구현으로 전환한 후 데이터베이스 구축 시간이 몇 배 느려졌습니다.
연결 문제인지, 연결 풀링인지, 아니면 다른 문제인지 확인하기 위해 sqlcmd
获取计时类型的统计信息来确定是否是连接问题、连接池或其他问题。如果我将多个文件作为附加的 -i <file.sql>
에서 타이밍 유형 통계를 얻을 수 있는 방법을 찾지 못했습니다. 여러 파일을 추가 -i <file.sql>
옵션으로 전달하면 이것이 Go 명령 시작 또는 초기 데이터베이스 연결 설정임을 나타내는 개선 사항을 확인할 수 있습니다. 문제. p>
저는 10개의 SQL 파일을 가져와서 10개의 개별 sqlcmd
执行来运行,也作为一个 sqlcmd
执行来运行,这十个文件作为单独的 -i
실행과 하나의
-i code> 입력 파일로 실행하는 테스트를 수행했습니다. 개별 명령에는 20초가 걸리고, 조합 명령에는 4초가 걸립니다. 따라서 이는 시작 오버헤드나 연결 오버헤드의 문제인 것 같습니다. <p>
</p>@siggemannen의 제안에 따라 AD 자격 증명과 직접 데이터베이스 사용자를 사용하여 연결을 테스트했습니다. AD 자격 증명은 직접 데이터베이스 연결보다 훨씬 느립니다. 이는 이것이 제 시나리오에서 나타나는 속도 저하의 원인임을 의미합니다. <p>
</p>문제를 해결하거나 추가 문제 해결을 위한 제안이나 아이디어를 찾고 있습니다. AD 인증 속도를 높일 수 있는 방법이 있나요? <h2 class="daan"></h2>Solution<p><code>sqlcmd
并不比原生版本慢。使用 Windows/AD 凭据建立连接会增加建立连接所需的启动时间,并且在用例中为每个 sqlcmd
Go 은 기본 버전보다 느리지 않습니다. Windows/AD 자격 증명을 사용하여 연결을 설정하면 연결을 설정하는 데 필요한 시작 시간이 늘어나고 사용 사례의 각 인스턴스에 대해 하나의 SQL 파일을 실행하여 추가 오버헤드가 추가됩니다. sqlcmd
运行许多 SQL 文件,这将恢复我们所需的性能。但是,我们无需任何返工即可使用的替代方案是使用 SQL Server 级别主体 sa
在创建数据库时创建。这恢复了与使用 AD 登录的本机 sqlcmd
sa
는 데이터베이스가 생성될 때 생성됩니다. 이렇게 하면 AD 로그인을 사용하여 기본 🎜과 비슷한 성능이 복원됩니다. 🎜위 내용은 Go SQLCMD는 Windows 기본 버전보다 느립니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











보안 통신에 널리 사용되는 오픈 소스 라이브러리로서 OpenSSL은 암호화 알고리즘, 키 및 인증서 관리 기능을 제공합니다. 그러나 역사적 버전에는 알려진 보안 취약점이 있으며 그 중 일부는 매우 유해합니다. 이 기사는 데비안 시스템의 OpenSSL에 대한 일반적인 취약점 및 응답 측정에 중점을 둘 것입니다. DebianopensSL 알려진 취약점 : OpenSSL은 다음과 같은 몇 가지 심각한 취약점을 경험했습니다. 심장 출혈 취약성 (CVE-2014-0160) :이 취약점은 OpenSSL 1.0.1 ~ 1.0.1F 및 1.0.2 ~ 1.0.2 베타 버전에 영향을 미칩니다. 공격자는이 취약점을 사용하여 암호화 키 등을 포함하여 서버에서 무단 읽기 민감한 정보를 사용할 수 있습니다.

백엔드 학습 경로 : 프론트 엔드에서 백엔드 초보자로서 프론트 엔드에서 백엔드까지의 탐사 여행은 프론트 엔드 개발에서 변화하는 백엔드 초보자로서 이미 Nodejs의 기초를 가지고 있습니다.

Go Language의 부동 소수점 번호 작동에 사용되는 라이브러리는 정확도를 보장하는 방법을 소개합니다.

Go Crawler Colly의 대기열 스레딩 문제는 Colly Crawler 라이브러리를 GO 언어로 사용하는 문제를 탐구합니다. � ...

Beegoorm 프레임 워크에서 모델과 관련된 데이터베이스를 지정하는 방법은 무엇입니까? 많은 Beego 프로젝트에서는 여러 데이터베이스를 동시에 작동해야합니다. Beego를 사용할 때 ...

Go Language의 문자열 인쇄의 차이 : println 및 String () 함수 사용 효과의 차이가 진행 중입니다 ...

Go Language에서 메시지 대기열을 구현하기 위해 Redisstream을 사용하는 문제는 Go Language와 Redis를 사용하는 것입니다 ...

골란드의 사용자 정의 구조 레이블이 표시되지 않으면 어떻게해야합니까? Go Language 개발을 위해 Goland를 사용할 때 많은 개발자가 사용자 정의 구조 태그를 만날 것입니다 ...
