분류 전체보기 327

[Laravel] subMonth / addMonth 사용 시 주의사항

31일에 subMonth 또는 addMonth 를 사용하게 되면 전달의 마지막날, 혹은 다음달의 마지막날이 나오지 않는다. 예를들어 12월 31일에 subMonth(1) 을 사용하게 되면, 11월 31일이 나와야 하는데 12월 1일이 나오게 됨 >>> $m = Carbon\Carbon::now() => Carbon\Carbon @1640933706 {#3627 date: 2021-12-31 15:55:06.929429 Asia/Seoul (+09:00), } >>> $m->subMonth(1) => Carbon\Carbon @1638341872 {#3628 date: 2021-12-01 15:57:52.344882 Asia/Seoul (+09:00), } addMonth(2) 를 했을 때 2월 28일을 ..

Laravel 2021.12.31

[Laravel] Eloquent로 USE INDEX / FORCE INDEX 사용하기

쿼리빌더 DB::table(DB::raw("`table_name` USE INDEX(table_name_tid_index)")) ->select('...') ->where('...') ->get(); 엘로퀀트 $tableElo = new TableModel(); $tableElo->setTable(DB:raw($tableElo->getTable().' USE INDEX(table_name_tid_index)')) ->select('...') ->where('...') ->get(); getQuery()를 사용하여 로그에서 쿼리 확인 방법 $tableElo = new TableModel(); $query = $tableElo->setTable(DB:raw($tableElo->getTable().' USE ..

Laravel 2021.12.21

[Linux] VI 에디터에서 시스템 클립보드로 복사하는 방법

콘솔로 서버 등에 접근해서 vi 에디터에서 복사 후, 시스템 클립보드로 복사가 되지 않을 때 확인방법 vim --version 해보면 -clipboard 와 같이 클립보드에 - 로 되어 있다. vim --version VIM - Vi IMproved 8.0 (2016 Sep 12, compiled Jun 21 2019 04:10:35) Included patches: 1-197, 322, 377-378, 550, 649, 651, 703, 706-707 Extra patches: 8.1.1401, 8.1.1382, 8.1.1368, 8.1.1367, 8.1.1366, 8.1.1365, 8.1.1046, 8.1.0613, 8.1.0547, 8.1.0546, 8.1.0544, 8.1.0540, 8.1.053..

Linux 2021.12.09

[Mysql/MariaDB] Slow Query Log 세팅

SET GLOBAL slow_query_log = ON; SET GLOBAL slow_query_log_file = 'C:/home/storage/logs/mariadb-slow.log'; SET GLOBAL long_query_time = 1; SET GLOBAL log_output = 'FILE'; 아래 3가지 확인 show global variables like '%slow%'; show global variables like '%long%'; show global variables like '%log_output%'; slow_query_log = 'ON' 으로 변경해야 함 slow_query_log_file = 로그파일 저장될 경로 long_query_tiem = 쿼리실행 시간이 10초 이상일때..

Mysql 2021.12.07

[Laravel] 오토로더 classmap 과 psr-4 성능 최적화

composer.json 내 autoload 부분에 기술된 형태에 따라 classmap 방식으로 class들을 로딩할건지 psr-4 방식으로 할건지 나뉜다. "autoload": { "classmap": [ "database" ], "psr-4": { "App\\": "app/" } }, classmap : composer.json 에 classmap 에 지정된 폴더 내의 모든 php를 읽어서 /vendor/composer/autoload_classmap.php 에 정적으로 배열을 생성하고 이 파일들을 한번에 오토로딩 한다. 장점 : 클래스들을 미리 로딩하므로 런타임시 psr-4보다 성능이 향상됨 단점 : 클래스를 추가할 때마다 dump-autoload를 해서 클래스맵을 작성 해줘야 하는 번거로움 psr..

Laravel 2021.12.07

[MariaDB] mysql 환경변수 설정하기 for Windows

윈도우에서 mysql 환경변수 설정하기 1. 시작->'고급'검색 후 '고급 시스템 설정 보기' 클릭 2. 환경변수 버튼 클릭 3. 시스템 변수 부분에서 'Path' 를 선택 후 '편집' 클릭 4. 새로 만들기 클릭 5. 자신의 mysql 또는 mariadb의 설치경로/bin 을 입력 후 확인 예) C:\Program Files\MariaDB 10.6\bin 6. cmd 진입 후 mysql -V C:\Users>mysql -V mysql Ver 15.1 Distrib 10.6.4-MariaDB, for Win64

Mysql 2021.11.24

[MariaDB] 300만건 대용량 테스트 데이터 만들기

1. github 에서 대용량 데이터 다운로드 받기 https://github.com/datacharmer/test_db GitHub - datacharmer/test_db: A sample MySQL database with an integrated test suite, used to test your applications and database A sample MySQL database with an integrated test suite, used to test your applications and database servers - GitHub - datacharmer/test_db: A sample MySQL database with an integrated test suite, use... ..

Mysql 2021.11.12
반응형