본문 바로가기

IT468

SID와 SERVICE NAME의 차이 및 확인법 SYS@XE> show parameter service_name; NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ service_names string XE SID는 INSTANCE의 유니크한 이름입니다. SERVICE NAME은 데이터베이스에 원격으로 접속할때 사용되는 TNS alias입니다. SERVICE NAME은 클라이언트의 tnsnames.ora 파일에 기록됩니다. SID와 동일할 수 있으며 원하는 다른 이름을 지정할 수 있습니다. SERVICE_NAME은 데이터베이스가 리스너에 자신을 등록할 수 있는 Oracle 8i부터 사용되는 기능입니다. 이런 방식으로 데이터베이스가 .. 2021. 7. 9.
TNS-12505: TNS:listener does not currently know of SID given in connect descriptor 설명 12505, 00000, "TNS:listener does not currently know of SID given in connect descriptor" // *Cause: The listener received a request to establish a connection to a // database or other service. The connect descriptor received by the listener // specified a SID for an instance (usually a database instance) that either // has not yet dynamically registered with the listener or has not been // sta.. 2021. 7. 8.
Oracle RANK 함수 순위를 구하게 해주는 함수입니다. RANK() OVER() : 동일 순위인 경우 1,1,3 형식으로 출력 ROW_NUMBER() OVER() 동일순위인 경우 1,2,3 형식으로 출력 DENSE_RANK() OVER() 동일 순위인 경우 1,1,2 형식으로 출력 사용법 SELECT 문에서 사용할 수 있음 OVER() 내에서 partition by 절과 order by 절 사용 가능 예제 EMP 테이블에서 부서 번호(DEPTNO)별로 부서 내에서 급여가 가장 많은 순서대로 보여주는 쿼리를 작성하세요 SQL> select empno,deptno,sal,rank() over (partition by deptno order by sal desc) as seq from emp; EMPNO DEP SAL SEQ --.. 2021. 7. 6.
ERROR 1227 (42000): Access denied; you need (at least one of) the SUPER or SET_USER_ID privilege(s) for this operation MySQL 관련 문의사항이 들어온 내용을 정리 한 내용입니다. 내용은 이렇습니다. 유저가 함수를 생성하는데 에러가 발생한다는 것입니다. 확인한 에러는 아래와 같습니다. ERROR 1227 (42000): Access denied; you need (at least one of) the SUPER or SET_USER_ID privilege(s) for this operation 해석해보면 유저에 SUPER나 SET_USER_ID 권한이 없어서 그렇다고 나오는 에러였습니다. 테스트 결과 SUPER 나 SET_USER_ID 둘 중에 아무권한이나 있으면 생성이 가능하지만, 근본적인 문제는 이게 아니였습니다. 함수의 소스를 확인 결과 CREATE DEFINER=`root`@`%` FUNCTION ... 형식으로.. 2021. 7. 5.