채굴 소프트웨어를 쓰다보면 아래와 같이 오류가 뜨는 경우가 있어요.

ERROR: Cannot load nvml. 

 

NVML은 NVidia Management Library의 약자라고 합니다.

 

여러가지 해봤는데 다음 방법이 제일 쉬웠습니다.

 

첫째, C:\Windows\System32\nvml.dll 파일을 복사합니다.

둘째, C:\Program Files\NVIDIA Corporation\NVSMI\ 안에 붙여 넣습니다. 이때 C:\Program Files\NVIDIA Corporation 까지는 있는데 NVSMI 폴더는 없는 경우가 있을 수 있는데, 저는 폴더를 'NVSMI' 로 새로 만들고 안에 파일을 붙여넣었습니다.

 

정상 실행 되는 모습입니다.

해외에서 동일한 문제로 답글을 보면 diver 문제라고하고 그래픽카드를 빼고 드라이버를 싹지우고, 좀 번거롭던데요, 이 방법이 안통할 때 또 해봐야죠.

컴퓨터를 나혼자 쓰면 상관없지만 다른 사람이 내 컴퓨터를 잠시라도 쓸 때, 최근에 내가 사용한 파일과 앱들이 보이면 곤란한 상황이 생길 수 있잖아. 물론 편한기능이라 회사에서는 유용하게 사용하지만 내 개인 PC는 얘기가 다르지. 그래서 내가 아는 방법을 간단히 써볼께.

 

 윈도우 시작화면에 나오는 최근에 추가한 앱과 

 

 

내가 최근에 사용한 파일과 즐겨찾기들. 이런 것들을 없애는 방법을 공유한다.

 

 

 

윈도우 탐색기에서 위에 보기 메뉴 클릭하면 오른쪽 끝에 옵션 버튼인 데 클릭한다.

 

 

아래 일반 탭에서 개인 정보 보호 섹션에서 즐켜찾기 체크를 해제 하고, 파일 탐색기 기록 지우기도 클릭을 한 다음에 확인을 클릭해 닫는다.

 

탐색기에 나오던 즐겨찾기 내 화면과 오른쪽 최근에 사용한 파일에 내용이 없어젔다.

 

 

 

 

자, 이번엔 최근에 추가한 앱 없애기인데 이건 의외로 유용하다만 어쨌거나 지우는 방법은, 

윈도우 시작 오른 쪽 검색란에 "설정"으로 입력하고 엔터하면 설정앱이 나타나는데 크릭 한다.

 

 

설정 화면에서 다시 개인 설정을 클릭한다.

 

 

 

개인 설정을 클릭해서 나온 화면에서 다시 왼쪽에 시작을 클릭한다. 그럼 오른쪽에 최근에 추가된 앱 표시가 있는 이걸 끄면 된다. 이외에도 시작 메뉴에서 앱 목록 표시나 가장 많이 사용하는 앱 표시등도 끌 수 있는데, 이건 굳이 내가 오픈해도 문제될 것이 없어서 켜둔체로 마무리 한다.

 

즐겨찾기에 이제 추가된 앱이 표시되지 않는다.

 

 

사용자 편의성이 간혹 황당하거나 당혹감을 안겨줄 수 있으니 미리미리 조치해두자고.

'컴퓨터 사용팁' 카테고리의 다른 글

nvml load 가 안될 때  (0) 2021.12.20

[Oracle] Data Types

오라클 데이터 타입 종류

 

 

Link : The Oracle Documentation - Data Types

 

 

 

 

 

Strings 문자열

 

- 현실적으로 VARCHAR2 만 대부분 사용한다. 현실에선 Y or N 같은 flag 값도 CHAR(1) 이 아닌 VARCHAR2(1) 로 선언한다. VARCHAR2 의 중요한 점은 length가 0 인 문자열, 즉 '' 은 NULL 과 동일한 의미이다.

데이터타입   
 CHAR(n)  고정길이 문자 / 최대 2000byte / default 1byte 
 VARCHAR2(n)  가변길이 문자 / 최대 4000byte / default 1byte 
 NCHAR(n)  고정길이 유니코드 문자(다국어 입력가능) / 최대 2000byte / 디폴트 값은 1byte 
 NVARCHAR(n)  가변길이 유니코드 문자(다국어 입력가능) / 최대 2000byte / 디폴트 값은 1byte 
 LONG   최대 2GB 크기의 가변길이 문자형, 사용하지 말 것. 대신 LOB 를 사용할 것.

- Oracle Documentation ...

 

 

 

 

 

 

Numbers 숫자

 

- 그냥 Number 만 선언해도 왠만큼 문제 없다. 오히려 정수, 소수 지정했다가 도로 해제하는 경우를 더 많이 봤다.

데이터 타입  설명 
 NUMBER(P,S)   가변숫자 / P (1 ~ 38, 디폴트 : 38) / S (-84 ~ 127, 디폴트 값 : 0)  / 최대 22byte 
 FLOAT(P)  NUMBER의 하위타입 / P (1~128 .디폴트 : 128) / 이진수 기준 / 최대 22byte 
 BINARY_FLOAT  32비트 부동소수점 수 / 최대 4byte 
 BINARY_DOUBLE  64비트 부동소수점 수 / 최대 8byte 

 

 

 

 

 

 

Dates 날짜

 

- Log나 측정, 혹은 시차, 섬머타임이 필요하다면 Timestamp, 그 외 Date를 사용하면 무방하다. 

데이터타입   설명 
 DATE  9999년 12월 31일 23시 59분 59초 까지. 최하 초단위끼지
 TIMESTAMP  밀리초까지. 뿐만아니라 Daylight saving 즉 섬머타임이 지원되고, Local time zone 도 지원되는게 Date와 큰 차이. 이 부분 MySQL 에서 설명한 내용을 참고.

Link : MySQL Data Types

 

 

 

LOB (Large Object)  대용량

데이터 타입  설명 
CLOB  문자형 대용량 객체 고정길이와 가변길이 문자집합 지원 
NCLOB  유니코드를 지원하는 문자형 대용량 객체 
BLOB  이진형 대용량 객체 
BFILE  대용량 이진 파일에 대한 위치,이름 저장 

 

 

 

 

 

 

[Oracle] Add Column 컬럼추가

오라클 테이블 컬럼추가하기

 

Syntax

ALTER TABLE table_name 
ADD
( 
   column_name data_type(size) nullable
);

> data_type : CHAR, VARCHAR, VARCHAR2, NUMBER, DATE, TIMESTAMP ...

See the link below for more details. 데이터 타입에 대한 더 자세한 내용은 아래 링크를 참조

Oracle data types.

 

> nullable : NULL or NOT NULL

 

example

 

 

[Oracle] Create a user  오라클 계정만들기

 

Syntax

1. Simple way.

 

CREATE USER user_name  IDENTIFIED BY password;

 

 

2. With tablespaces. 테이블스페이스 지정하기

 

Syntax

 

CREATE USER user_name  identified by password  
default tablespace USERS temporary tablespace TEMP;

 

 

How to check tablespace.   테이블스페이스를 찾는 방법은

Find .dbf files    .DBF 파일을 찾는 것과

 

Or

Query   쿼리로 조회할 수 있다.

 

SELECT *
FROM   DBA_TABLESPACES;

 

[Oracle] Rename table statement

오라클 테이블명 변경하기

 

Syntax

ALTER TABLE from_name RENAME TO to_name;

 

MS 오피스 엑셀도 멋지지만 구글 드라이브에 있는 엑셀, 스프레드쉬트도 한번 도전 해보고 싶어서 시작했다.

 

내가 회사를 차리면 MS 오피스 안쓰고 구글 드라이브를 사용할 계획이다.

 

그러기 위해서는 어디까지 가능한지, 어떤 장점이 있는지 한번 파봐야 겠지.

 

이제 그걸 하나하나 찾아보자.

 

 

§ 이번 교육목표

 

Basic Quest : 매크로 기록해보기

Main Quest : 셀에 값 입력해보기

Bonus Quest : Ctrl Shift Page UP 한 행번호 알아내기

 

 

Google 스프레드시트를 실행한다.

 

 

 

 

엑셀과 아주 비슷하다. 바로 매크로로 들어가본다. 어떤 언어로 매크로가 짜여져 있을까 궁금하다.

 

 

 

#1에서 해볼 부분은 간단하게 1~5까지 값입력해보기와 sum() 넣어보기, 그리고 shift page up 기능을 매크로 기록해 두고 소스를 본다. 

 

 

 

 

 

 

 

기록된 매크로를 보러 가보자.

 

 

 

 

 

 

MS 엑셀과 같이 VBA 가 아니다. 그래도 아주 흡사하다. Sub procedure도 아니고 function이고, var 선언이 있는 것을 보니까 javascript 형식인거 같다. 매크로는 프로그래밍 능력이라기 보단 내가 자주스는 스크립트를 모아두었다가 붙여넣고 조금씩 조정해서 쓰기때문에 어렵게 생각할 필요가 없다. 

 

시트에 접근하는 방법은 Spreadsheet.App.getActive(); 로 구한다. 시트가 많으면 이름으로도 가져 올 방법이 있을거다.

셀에 값을 입력하는 것은 .getRange('B3').active(); 로 지정해두고 .getCurrentCell().setValue('1'); 로 입력한다. 

SUM() 수식을 넣는 부분도 동일하다.

마지막에 ctrl shift page up 한는 부분이 있는데, 실제 필요한 것은 데이터가 있는 마지막 행번호를 알아내는 것이다. .getSelection() 으로만 끝내서 ctrl shet page up 한 영역선택한 것으로 매크로가 끝났다.

 

 

첫번째 정복할 부부은 값입력을 .getRange('B3').active(); 한 후에 .getCurrentCell().setValue('1'); 하는 부분을 한줄로 처리해보는 것이다.

 

오, 된다. 

 

 

 

 

 

이제 Ctrl shift page up 해서 행번호를 알아내보자.

솔직히, 시행착오를 많이 했고, 또 코드도 내가 원하는 스타일은 아니다만, 일단 이렇게 된다.

Hello 글자가 있는 부분의 행번호를 알아낸다.

 

#1은 이정도로 마무리 하자.

 

 

  이제 본격적으로 통계 영역으로 한걸음 나아갈 때입니다. 데이터베이스로 데이터를 관리하는 여러 이유 중에, 저는 수많은 데이터를 엮어 의미 있는 지표를 만들어 내고, 또 그것을 시계열로 차트를 그려내어 데이터의 흐름을 판단하기 위한 것을 가장 중요하게 생각합니다. 그러기 위해서는 관점별로 수치 지표에 대한 roll-up 을 다룰 줄 알아야 합니다. 

 

  예를 들면서 roll-up에 대한 설명을 드리겠습니다. 아래 city 테이블에는 도시별로 인구수가 있습니다.

 

country 테이블에는 국가코드와 국가명이 있다고 했을 때 한국의 총인구수는 얼마나 되는 지 구해보겠습니다.

 

 

먼저 한국의 도시별 인구를 구합니다. 이게 되면 한국전체 인구를 구합니다.

 

 

한국 전체 인구수를 구하는 SQL입니다. 한국 기준이 때문에 우선 city 테이블의 컬럼은 select 항목에서 빠져야 합니다.

a.Code와 a.Name 은 국가코드와 국가명입니다. a가 가르키는 것이 country 테이블이죠. 그다음에 sum() 이라는 함수를 사용했습니다. 엑셀처럼 합계를 하는 함수입니다. 인자는 city 테이블의 Population 컬럼입니다. 따라서 국가코드, 국가명 명 기준으로 인구수를 합계해라라는 명령이 됩니다. 그런데 이 sum() 함수는 아래 group by 와 같이 써 줘야 합니다.  대부분은 select 에 컬럼과 동일하게 적어주면 됩니다. 결과를 보면, 3천9백만 명으로 나옵니다. 그냥 예제 데이 터니까 그러려니 하시길 바랍니다.

 

자, 그런데 사실은 country 테이블에도 Population 컬럼이 있습니다. 한번 확인해볼까요?

country 테이블의 Popluation 컬럼은 max() 함수로 구했습니다. max값은 데이터 중에 최댓값을 구한다는 뜻인데요, 만약에 그냥 sum()을 사용하면 인구수가 4천7백만 명 x 도시수만큼 나오게 됩니다. 

 

 

왜 sum(a.Population) 을 쓰면 안 되는지 설명드리겠습니다. 물론 문법적으로는 문제가 없습니다. 데이터 값이 틀리게 되는 거죠. sum과 group by 부분을 빼고 실행하면 아래와 같이 결과가 나옵니다. country 테이블의 population 은 같은 데이터가 연속으로 나열된 것이 보이죠? sum()을 하게 되면 이 중복으로 나온 값을 다 합산을 하기 때문에 sum()을 쓰면 안 된다는 이야기입니다. max()는 이 중에서 가장 큰 값을 구하는데, 모두 동일한 값이 기 때문에 어떤 값이 나와와도 괜찮겠죠?

국가 전체 인구와 같은 경우 max()를 하지 않고 어떤 경우에는 관점으로 정의할 수 도 있습니다. select 항목 중에 alias 는group by에서는 빼줘야 합니다. 즉 as ~ 는 쓰지 않습니다. 

 

자주 사용하는 통계 합수를 간단히 정리해드리겠습니다.

 

  • sum() : 합계
  • max() : 최대값
  • min() : 최소값
  • avg() : 평균값
  • count() : 건수
  • std(), stddev(), stddev_pop() : 표준편차. stddev() 가 오라클에도 사용되기 때문에 가장 많이 쓰입니다.
  • var_pop(), variance() : 분산. 오라클에서는 variance()를 씁니다.

 

수고하셨습니다.

 

 

 

 

 

 

 

 

+ Recent posts