본문 바로가기

분류 전체보기667

728x90
반응형
윈도우에 OpenJDK 8을 설치하자 OpenJDK 8을 사용하는 이유 OpenJDK를 사용하는 이유는 여러가지가 있겠지만 보통은 라이센스 때문이다. 하지만 나처럼 알고리즘 공부 때문에 사용하는 경우도 있다. 특히 SW Expert Academy의 경우 OpenJDK 8를 지원하기 때문에 OpenJDK 8을 사용할 수 밖에 없다. OpenJDK 윈도우 설치 방법 OpenJDK를 설치하기 위해 아래의 주소로 이동하여 윈도우에서 OpenJDK를 쉽게 설치할 수 있도록 빌드해놓은 것을 다운로드 받는다. OpenJDK 윈도우 빌드: https://github.com/ojdkbuild/ojdkbuild 아래의 사진처럼 인스톨러를 다운로드가 완료되면 실행한다. 'Next' 버튼을 누른다. 약관에 동의하고 'Next' 버튼을 누른다. 기본값으로 설치할 .. 2022. 10. 11.
Node.js 에서 MySQL 8.0 에 연결할 때 "does not support authentication protocol" 오류가 발생하는 경우 오류가 발생하는 이유 Node.js에서 MySQL 패키지를 설치하는 한국어 가이드 문서를 보면 흔히 구버전 MySQL을 설명하는 가이드가 많다. MySQL이 과거에는 'mysql_native_password' 인증 프로토콜을 쓰다가 현재는 'caching_sha2_password'을 사용하고 있는데 이로인해서 MySQL 8.0에 구버전 MySQL 패키지를 사용해서 연결하는 경우 아래와 같은 경고가 뜨며 연결이 되지 않는 것을 볼 수 있다. Client does not support authentication protocol requested by server; consider upgrading MySQL client 해결 방법 이 문제를 해결하는 방법은 2가지가 있다. 첫 번째 해결 방법은 인증방식을 구.. 2022. 10. 10.
웹 개발 중에 크롬 웹 브라우저의 화면이 계속 똑같을 때는 '캐시 비우기'를 수행하자 캐시(Cache)는 서버의 부하를 낮추고 사용자에게 더 빨리 화면을 제공할 수 있는 장점이 있는 기술이다. 하지만 개발 중이라면 캐시로 인해 실제 소스코드를 변경했음에도 불구하고 프로그램에 반영되지 않는 경우가 발생한다. 특히 웹을 개발하는 과정 중에는 자주 겪는 현상이다. 캐시는 WAS(Web Application Server)부터 웹 브라우저(Web Browser)까지 모두 수행하므로 소스코드를 변경했고 컴파일을 했다해도 WAS의 캐시 혹은 웹 브라우저의 캐시 때문에 웹 브라우저에서 테스트할 때 같은 결과가 나타나는 문제가 발생한다. 본 글에서는 크롬 웹 브라우저의 캐시를 삭제하여 이 문제를 해결하는 방법을 안내한다. 1. 개발자 도구 활성화 캐시 삭제를 하려면 먼저 개발자 도구를 활성화해야한다. 아.. 2022. 10. 7.
[CentOS] 톰캣(Tomcat)이 IPv4를 우선 사용하도록 설정 구동할 프로그램이 IPv4 주소만 지원하도록 구현했다면 톰캣(Tomcat) WAS가 IPv4 주소를 우선적으로 사용하도록 설정하는 것이 필요하다. 이클립스에서 개발할 때 설정하는 방법은 아래의 링크에서 설명하였고 본 글에서는 CentOS에서 설정하는 방법을 소개한다. 2022.08.12 - [소프트웨어 개발(Software Development)/톰캣(Tomcat)] - 이클립스에서 톰캣(Tomcat)이 IPv4 주소만 사용하도록 설정 이클립스에서 톰캣(Tomcat)이 IPv4 주소만 사용하도록 설정 톰캣이 IPv4 주소만 사용하도록 설정하는 이유 가장 많이 사용되는 네트워크 주소체계로 IP(Internet Protocol)을 흔히 말한다. IP 주소에는 IPv4와 IPv6라는 두 가지 버전의 주소체계가.. 2022. 10. 5.
넥사크로 14 테마 임시 폴더에서 이미지 가져오기 넥사크로(Nexacro) 14에서 테마에 있는 사진과 같은 파일을 가져오고 싶다면 넥사크로 14 테마(Theme)가 수정 상태일 때 생기는 임시 폴더를 활용하는 방법이 있다. 넥사크로 14 테마 임시 폴더 주소 넥사크로 14의 버전과 운영체제에 따라 아래의 사진처럼 테마를 열었을때 생성되는 임시 폴더(Folder, Directory)의 주소가 다른데 보통 아래와 같이 4가지 안에서 찾을 수 있다. C:\Users\사용자명\OneDrive\문서\nexacro\14\TEMPORARY C:\Program Files (x86)\nexacro\14\TEMPORARY C:\Program Files\nexacro\14\TEMPORARY C:\Program Files (x86)\nexacro\TEMPORARY 넥사크로.. 2022. 10. 4.
5. 쿼드콥터를 조립하자 본 글은 2015년 12월 4일 8시 1분에 썼던 글이며 블로그 자료 이전으로 날짜만 갱신된 글입니다. 멀티위 컨트롤러에 멀티위를 업로드 하였다면 이제 쿼드콥터를 조립해야한다. 쿼드콥터를 조립할 때는 각 부품이 소비하는 전력과 발생하는 열을 고려해서 조립해야한다. 우리가 구매했던 부품들은 이런 것이 다 고려되어 있는 것들이다. 하지만 우리도 예상 못한 것이 있었는데 전원부 단자와 배터리의 단자가 완전히 다른 것 문제가 있었다. 분명히 주문은 제대로 했는데 말이다. 그래서 급한 나머지 우리는 구미의 전자상가와 공구상가를 들러서 단자들을 찾아보았으나 그 어느 곳에도 없었다. 가게 주인 말로는 이 단자는 수요가 거의 없기 때문에 사놓지를 않는다고 한다. RC샵에가서 찾으면 금방일텐데 하필 구미에 RC샵이 없을.. 2022. 9. 26.
[CentOS] 톰캣 메모리 조정하는 방법 톰캣 메모리 설정 톰캣을 실행하는 프로그램에서 메모리 설정을 바꾸면 톰캣 메모리를 조정할 수 있다. 보통은 아래 경로에 톰캣을 실행하는 프로그램이 있다. vi /etc/systemd/system/tomcat.service 아래의 사진과 같은 화면이 나타나면 'CATALINA_OPS'의 메모리 설정을 적절하게 수정한다. 'Xms'는 최소값이며 'Xmx'는 최대값이다. 이외에도 세부적으로 여러 설정이 있지만 본 글에서는 다루지 않는다. 설정 반영 아래의 명령어를 입력하여 변경된 설정을 서비스에 반영한다. sudo systemctl daemon-reload 톰캣 재기동 아래의 명령어를 입력하여 변경된 메모리 설정으로 톰캣이 실행되도록 한다. systemctl restart tomcat 메모리 설정이 반영되어 .. 2022. 9. 23.
[교통 용어] AFC(Automatic Fare Collection, 자동요금징수설비) 정의 AFC(Automatic Fare Collection, 자동요금징수설비)는 교통 관련이용 요금을 자동으로 징수하는 시스템을 말한다. 주로 철도 분야에서 사용하는 용어이다. AFC는 우리가 이미 경험하고 사용 중인 설비이며 사용 예시로 아래의 사진들처럼 지하철을 이용할 때 출입구에 교통카드를 접촉시키면 자동으로 요금이 나가는 것과 같은 것들이 있다. 에스트래픽이 미국 BART에 납품한 AFC 방송분 참고문서 "AFC(Automatic Fare Collection)", ITS 국제협력센터, 국토교통부. @원문보기 "Automated Fare Collection System (AFC)", 에스트래픽. @원문보기 "자동요금징수 시스템", 스마트교통, 롯데정보통신. @원문보기 2022. 9. 22.
[CentOS 7] Express 방화벽 허용 Node.js의 웹 개발 프레임워크인 Express의 포트를 확인하고 방화벽 설정을 해두어야 본인이 원하는 위치에서 원활하게 접속이 가능하다. CentOS 기준으로 Express 프로젝트가 사용하는 포트를 확인하고 적절한 포트를 아래의 사진처럼 입력하면 방화벽 규칙이 추가된다. firewall-cmd --permanent --zone=public --add-port=포트번호/프로토콜 아래의 명령어를 입력하여 CentOS 방화벽 규칙을 적용한다. firewall-cmd --reload 아래의 명령어를 입력하여 적용된 CentOS 방화벽 규칙을 확인한다. firewall-cmd --list-all 다시 웹브라우저로 실행한 Express 프로그램에 접속하면 아래처럼 잘 나타나는 것을 확인할 수 있다. 2022. 9. 22.
[윈도우 11] FTP 서버 설치하는 방법 FTP(File Transfer Protocol)를 윈도우 11(Windows 11)에 설치하는 방법은 여러가지가 있겠지만 본 글에서는 마이크로소프트(Microsoft) 윈도우 11이 자체적으로 제공하는 FTP 서버를 설치하는 방법을 다룬다. 다른 윈도우 버전에서 FTP 서버를 설치하는 경우 용어나 세부적인 과정이 조금 다를 뿐 윈도우 7, 8, 8.1, 10과 윈도우 서버에서도 본 글을 참고하여 FTP 서버를 설치할 수 있다. 1. Windows FTP 기능 활성화 윈도우 11은 자체적으로 FTP 기능을 제공하므로 간단하게 GUI(Graphical User Interface)로 설치할 수 있다. FTP 기능을 윈도우 11에 설치하는 방법은 다음과 같다. 아래의 사진처럼 'Windows 기능 켜기/끄기'.. 2022. 9. 20.
오라클, 사이베이스, MS-SQL를 티베로로 마이그레이션 하는 도구 'TbMigrator' 설치 및 실행 TbMigrator란? 오라클(Oracle), 사이베이스(Sybase), MS-SQL에서 티맥스(Timax) 티베로(Tibero)로 DB(DataBase)를 마이그레이션(Migration) 하고 싶다면 티베로가 제공하는 TbMigrator를 사용할 수 있다. TbMigrator 설치 TbMigrator는 아래의 주소에 압축되어 있다. ('%TB_HOME%'은 티베로 설치 경로가 담긴 환경변수이다) %TB_HOME%\client\bin\tbmigrator.zip 아래의 주소로 이동하여 'tbmigrator.zip'가 있는지 확인한 후 압축해제한다. %TB_HOME%\client\bin\ 'tbmigrator.zip'을 압축해제하면 위와 같이 3개의 폴더가 나타나는데 현재 실행한 환경과 대응되는 폴더로 이동.. 2022. 9. 16.
[오라클/티베로] 사용자 정보 및 목록 확인 사용자 목록 확인 아래의 명령어를 입력하면 전체 사용자 목록이 나타난다. SELECT * FROM all_users; 사용자 정보 확인 좀 더 자세한 사용자의 정보를 확인하고 싶다면 아래의 명령어로 확인할 수 있다. SELECT * FROM DBA_USERS; 참고문서 [1] "6.101 DBA_USERS", 1412 of 2693 pp., Oracle Database Online Documentation 12c Release 1 (12.1), Oracle. @원문보기 2022. 9. 14.
[티베로] tbSQL을 사용하여 대용량 SQL 파일 실행하기 tbSQL이란? tbSQL은 티베로(Tibero)에서 제공하는 SQL(Structured Query Language) 처리용 유틸리티이다. 내가 tbSQL을 사용하는 경우 티베로 관리를 GUI(Graphical User Interface)로 쉽게할 수 있는 'TiberoStudio'와 'SQLGate for Tibero Developer' 등을 사용하면 (현재 기준으로는) 단위 시간당 SQL 처리량이 낮아서 대용량 SQL 파일을 처리할 때 부적합했다. 그래서 tbSQL을 사용했는데 비교도 안 될 만큼 빨리 처리되었고 지금은 이런 경우에 나는 tbSQL을 쓴다. tbSQL 사용 방법 명령 프롬프트(Command Prompt, CMD) 또는 터미널(Termnial)을 실행하여 아래와 같은 명령어를 입력하면 .. 2022. 9. 8.
[스프링] STS(Spring Tool Suite) 4 통합개발환경 설치 스프링 부트 개발을 위해서 통합개발환경(Integrated Development Environment, IDE)으로 STS(Spring Tool Suite)를 활용할 수 있다. 본 글에서는 STS 4.15.3 버전을 설치하는 것을 안내한다. STS 다운로드 아래의 주소로 가서 STS 다운로드 페이지로 이동하여 STS 4.15.3을 받는다. 버전이 바뀌었다면 동일한 버전을 다운받아도 되고 최신 버전으로 받아도 무방하다. 이보다 최신 버전의 경우 설치과정은 비슷하나 세부적으로는 조금 다를 수 있다. STS 다운로드 주소: https://spring.io/tools STS 4 압축 해제 아래의 사진처럼 다운로드한 파일을 명령어를 입력하여 압축해제한다. java -jar spring-tool-suite-4-4... 2022. 9. 6.
티베로 6를 시작하는 명령어와 중지하는 명령어 티베로 시작 명령어 명령 프롬프트를 관리자 권한으로 실행한 다음 아래의 명령어를 입력하면 아래의 사진처럼 티베로가 시작된다. tbboot 티베로 중지 명령어 티베로를 중지하는 방법도 시작하는 방법과 유사하게 관리자 권한으로 명령 프롬프르틀 실행한 다음 아래의 명령어를 입력하면 아래의 사진처럼 중지된다. 티베로 상태에 따라 중지할 때 옵션이 나타나는데 적당한 것을 선택하면 된다. tbdown 2022. 9. 6.
[티베로] TBR-28012: Index '인덱스명' is in an unusable state. 최근에 티베로(Tibero) 사용 중 인덱스가 사용불가능한 상태라고 경고가 나와서 리빌드(rebuild)를 했었다. 특정 상황에서 인덱스가 사용 불가능한 상태로 넘어가는 경우가 있는데 이 경우 인덱스 리빌드를 통해 해결할 수 있다. 경고 문구 "TBR-28012: Index 'PDMTCS.PK_BASE_CARINFO' is in an unusable state." 인덱스 상태 확인 SELECT index_name, status from dba_indexes WHERE index_name='인덱스명' 인덱스 리빌드 ALTER INDEX '인덱스명' REBUILD 리빌드 후 인덱스 상태 확인 SELECT index_name, status from dba_indexes WHERE index_name='인덱스명' 2022. 9. 5.
[Git] "Merge branch 'master' of"가 Push 하면 자동으로 생기는게 싫다면 Push 하면 "Merge branch 'master' of"가 자동으로 생기는 경우가 있을 것이다. 이는 local branch에 변경점이 있고 local branch에 반영되지 않은 변경점이 remote branch에도 있는 경우 Pull 하고 Push를 하면 자동으로 Merge가 수행되어 발생한다. 이런 것이 싫다면 해결 방법이 여러가지가 있겠지만 Pull할 때 rebase 옵션을 true로 설정하면 예방이 가능하다. 단, Git 미숙련자라면 rebase를 true로 설정하지 않는 것을 추천한다. rebase 옵션 값을 수정하는 방법은 여러가지가 있겠지만 이클립스(Eclipse)에서 수정하는 방법은 'Prefereces' - 'Team' - 'Git' - 'Configuration' - 'Syste.. 2022. 9. 1.
[Java] 표준 출력 사용하기 println(), print(), printf() 동영상 설명 2강. 'System out' 표준 출력으로 문자를 출력하자 개요 자바(Java)에는 표준 출력을 할 수 있는 메서드로 println()과 print(), printf()가 있다. 이 메서드는 System.out 클래스에 있다. 사용 방법은 다음과 같다. 예제 자료: https://github.com/EngineeringCode/study-java/blob/main/src/com/hcpark1993/example/io/SystemOutPrintExample.java println() 사용법 println()은 입력된 값에 개행문자가 함께 출력되는 메서드이다. System.out.println("문자열"); System.out.println("문자열"+"문자열"+변수); System.out.p.. 2022. 8. 31.
[윈도우 11 홈] '로컬 사용자 및 그룹' 대신에 사용할 수 있는 도구 윈도우 11 홈(Windows 11 Home)에는 '로컬 사용자 및 그룹' 도구를 사용할 수 없다. 윈도우 11 홈에서 '로컬 사용자 및 그룹' 도구를 실행하면 다음과 같은 문구가 나타난다. "이 컴퓨터는 Windows 11 Home을(를) 실행하고 있습니다. 이 스냅인은 이 버전의 Windows 10에 사용할 수 없습니다. 이 컴퓨터의 사용자 계정을 관리하려면 제어판의 [사용자 계정] 도구를 사용하십시오." 윈도우 11 홈 라이센스에서는 '로컬 사용자 및 그룹' 프로그램을 사용할 수 없다. 하지만 그 대안으로 유사한 기능을 제공하는 별도의 프로그램을 사용하는 방법이 있다. 무료로 사용할 수 있으며 아래의 주소에서 다운로드할 수 있다. 다운로드 주소: https://github.com/proviq/Acc.. 2022. 8. 29.
자료구조란 무엇이며 왜 알아야 하는가? 자료구조 정의 컴퓨터에서 자료구조(Data Structure)는 자료를 효율적으로 보관하고 연산하기(다루기) 위한 방법을 다루는 학문이자 기술이다. 대표적인 자료구조 대표적인 자료구조는 아래와 같다. 큐(Queue) 스택(Stack) 힙(Heap) 링크드 리스트(Linked List) 트리(Tree) 그래프(Graph) 자료구조를 알아야 하는 이유 공학은 문제를 해결하는 최적의 방법을 찾고자 끊임 없이 연구하는 분야이다. 자료구조는 이러한 컴퓨터 문제를 효율적으로 해결하기 위해 자주 사용하는 방법을 정리한 학문이자 기술이며 자료구조를 알아야 빠른 시간 내에 문제를 해결할 수 있다. 자료구조를 문제 해결에 잘 적용할 수 있는 개발자(연구자)를 우수한 개발자라고 한다. 이러한 우수한 개발자를 구하기 위해 기.. 2022. 8. 23.