데이터베이스 관리자

데이터베이스 기술을 향상시키고 커뮤니티의 다른 사람들에게서 배우고 자하는 데이터베이스 전문가를위한 Q & A


3
sysjobhistory에 대한 SQL Server 2012 catalog.executions-결합 할 수있는 방법이 있습니까?
리소스를 모두 사용했고 ssisdb.catalog 테이블을 실행하는 작업에 조인 할 수있는 완벽한 방법을 찾을 수 없습니다. 카탈로그 테이블에서 작성된 실행 시간과 행을 모니터링하기 위해 일부 사용자 정의 sproc을 작성하려고 시도하면 호출 작업과 함께 묶을 수있는 것이 매우 유리합니다. catalog.executions 테이블을 msdb.sysjobhistory에 조인하는 데 사용할 수있는 테이블이 있는지 확인하려고합니다. SSIS 패키지라는 작업을 …

2
SQL Server가 충돌하는 SQL 쿼리를 추적하는 방법
우리는 SQL Server 2008 데이터베이스 서버를 가지고 있습니다 (MS 장애 조치 클러스터링에서 실행되고 있지만 여기서는 관련이 없다고 생각합니다). 우리의 응용 프로그램은 DB 액세스를 위해 Hibernate를 실행하고, 최근 v3.1에서 3.6으로 업그레이드 한 이후, 정기적으로 (24 ~ 48 시간, 때로는 더 자주) SQL Server 충돌이 발생했습니다. 문제의 특정 문제는 메모리와 관련된 것으로 …

1
PostgreSQL은 어떻게 기본 키의 클러스터 이후에 디스크에서 새 레코드를 물리적으로 주문합니까?
PostgreSQL이 디스크에서 레코드를 주문하는 방법을 알아야합니다. 이 경우 docs에 명시된 바와 같이 인덱스 조합을 이용하고 싶습니다 . 이것은 비트 맵을 사용하여 일치하는 행을 가져 와서 실제 위치에 따라 반환합니다. 문제의 테이블이 기본 키로 클러스터되었습니다. 알다시피 PostgreSQL은 클러스터링이 완료된 후에도 자동으로 클러스터링을 계속하지 않습니다 (그러나 특정 인덱스에 따라 클러스터링되었다는 것을 기억합니다). …

1
아주 작은 테이블 (최대 1000 행)에 인덱스를 사용해야하는 이유가 있습니까?
응용 프로그램 개발 중에 제품의 신선 / 썩음, 빨강 / 녹색 / 파랑과 같이 "개체"의 속성을 보유하는 "소량"의 데이터 (보통 10-40 값, id+ value및 때로는 type)를 저장하는 많은 테이블이 있습니다 . 전자 부품을 신선하게 만들 수없고 산소 가스를 붉게 할 수없고 테이블의 행 수를 무제한으로 가질 수 없기 때문에이 속성을 …

2
'name'@ '%'의 MySQL에 사용자를 추가하면 오류 1396이 발생하지 않습니다.
방금 MySQL을 사용하여 새로운 사용자를 추가하려고했습니다. CREATE USER 'name'@'%' IDENTIFIED BY '...' 그러나 다음 오류와 함께 실패합니다. ERROR 1396 (HY000): Operation CREATE USER failed for 'name'@'%' localhost에 대해서만 사용자를 추가하면 정상적으로 작동합니다. CREATE USER 'name'@'localhost' IDENTIFIED BY '...' 나는 무엇이 문제가 될 수 있는지 전혀 모른다. 어떤 아이디어에 대해서도 감사하겠습니다. …

3
SQL Server 샌드 박스
보고서 개발자가 작업 할 수 있도록 샌드 박스를 설정하려고합니다. 현재 계획은 매일 저녁 데이터베이스를 "재설정"하는 것이지만 어떻게해야할지 잘 모르겠습니다. 재설정의 의미는 서버의 하나의 데이터베이스를 제외한 모든 사용자 테이블, 뷰, 저장 프로 시저 등을 본질적으로 삭제하려는 것입니다. 또 다른 옵션은 데이터베이스를 삭제하고 다시 작성하는 것이라고 가정하지만 적절한 모든 AD 그룹 / …

2
데이터 캡처 및 __ $ update_mask 바이너리 변경
CDC를 사용하여 프로덕션 테이블의 변경 사항을 캡처하고 있습니다. 변경된 행이 데이터웨어 하우스 (informatica)로 내보내집니다. __ $ update_mask 열에는 varbinary 형식으로 업데이트 된 열이 저장되어 있습니다. 또한 다양한 CDC 함수 를 사용하여 해당 마스크의 열이 무엇인지 확인할 수 있습니다. 내 질문은 이것입니다. 창고에서 변경 된 열을 식별 할 수 있도록 마스크 …

5
비관적 잠금보다 낙관적 잠금이 더 빠른 이유는 무엇입니까?
두 가지 유형의 잠금은 현재 프로세스가 다른 프로세스에서 사용중인 경우 프로세스가 레코드의 올바른 사본을 대기하도록합니다. 비관적 잠금의 경우 잠금 메커니즘은 DB 자체 (기본 잠금 개체)에서 비롯된 반면, 낙관적 잠금의 경우 잠금 메커니즘은 레코드가 "stale"인지 여부를 확인하는 타임 스탬프와 같은 일종의 행 버전 관리 형식입니다. 그러나 두 번째 프로세스는 두 번째 …

1
파일 증가 이벤트 식별
포트폴리오에서 오랜 기간 동안 확장 된 기본 자동 증가 설정 (1MB 또는 10 % 단위)으로 생성 된 많은 DB를 발견하고 있습니다. 각 DB 파일에 대한 외부 조각화 양을 측정하려는 경우 DB 파일의 크기가 몇 번 (자동 증가 또는 수동으로) 수정되었는지 메타 데이터에서 얻을 수 있습니까? 명확히하기 위해 인스턴스 재시작 이후뿐만 …

1
수요 예측의 분류를위한 간단한 스키마 설계
나는 다음과 같은 경우에 대한 기본 스키마 디자인을 고안 해야하는 훈련 연습으로 간단한 데이터베이스 디자인 작업을 수행하고 있습니다. 제품의 부모-자식 계층이 있습니다 (예 : 원자재> 진행중인 작업> 최종 제품). 각 레벨에서 주문이 이루어집니다. 다음 6 개월 동안 매주 주문량을 볼 수 있습니다. 각 제품 레벨에 대한 수요 예측을 수행 할 …

1
패키지에 대한 권한이있는 모든 사용자를 나열하는 방법
패키지에 대한 권한을 가진 모든 사용자를 나열하는 쿼리를 찾고 있습니다. 예를 들어, Schema_A 사용자에게 패키지 B.MyPackage를 실행할 권한이 부여되었습니다. role_tab_privs, role_sys_privs, sys.dba_sys_privs, dba_role_privs와 같은 뷰 또는 테이블을 쿼리하고 있지만 원하는 것을 찾을 수 없습니다.

1
가져 오기에서 mysql 테이블 덤프로 기존 레코드 교체
mysqldump를 사용하여 덤프를 수행했습니다. mysqldump -u... -p... mydb t1 > mydb_table.sql 그런 다음 동일한 테이블이지만 다른 레코드를 가진 다른 데이터베이스에서 덤프를 가져 왔습니다. mysql -u...-p... mydb < mydb_tables.sql 가져 오기 DB에는 primary_key 1에서 1000까지의 레코드가 있고 내보내기 db에는 5000에서 10,000이 있습니다. 그러나 기존 레코드를 가져올 때, 즉 1에서 1000까지 삭제되었습니다. …

2
보관 목적으로 데이터베이스 조각 모음 / 압축을 수행하는 가장 좋은 방법
이메일 아카이빙에 사용되는 SQL Server 인스턴스가 있습니다 (타사 아카이빙 패키지 제공). 소프트웨어는 빈 데이터베이스로 롤오버됩니다. 우리는 과거에이 분기를 수행했지만 지금은 매월 수행하려고합니다. 아카이브되는 데이터의 양은 한 달에 약 15-20GB이며 대부분의 데이터는 소수의 테이블 (보통 2-4)에만 있습니다. 새 데이터베이스로 롤오버하면 이전 데이터베이스는 읽기 전용으로 사용됩니다. 내가하고 싶은 것은 모든 테이블 / …

2
RAM 증가, 성능 저하
설정: Windows Server 2008 R2 SQL Server 2008 R2 SP1 240GB RAM TempDB는 자동 증가없이 8x16GB 데이터 파일입니다 (총 128GB) 물리적 / 독립형 서버 이 서버는 ETL 처리에 사용됩니다. 우리는이 서버에 더 많은 RAM을 설치하여 총 240GB RAM을 설치했습니다. SQL Server 서비스는 유일하게 실행되는 것입니다. BIOS, OpenManage 및 Windows에서 메모리가 …

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.