<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>내 머릿속 데이터베이스</title>
    <link>https://mydb.tistory.com/</link>
    <description>이 블로그는 제가 보고 듣고 공부하면서 얻는 지식이나 경험들을 저장해두는 비영리적인 공간입니다.</description>
    <language>ko</language>
    <pubDate>Sat, 27 Jun 2026 10:53:36 +0900</pubDate>
    <generator>TISTORY</generator>
    <ttl>100</ttl>
    <managingEditor>파도소리</managingEditor>
    <image>
      <title>내 머릿속 데이터베이스</title>
      <url>https://t1.daumcdn.net/cfile/tistory/2402113858DB4A5425</url>
      <link>https://mydb.tistory.com</link>
    </image>
    <item>
      <title>Atom Runner 한글 지원 방법</title>
      <link>https://mydb.tistory.com/249</link>
      <description>&lt;p&gt;&lt;a href=&quot;https://github.com/lsegal/atom-runner/issues/94&quot; target=&quot;_blank&quot; class=&quot;tx-link&quot;&gt;https://github.com/lsegal/atom-runner/issues/94&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;embed src=&quot;https://github.com/lsegal/atom-runner/issues/94&quot; width=&quot;400&quot; height=&quot;300&quot; allowscriptaccess=&quot;never&quot;&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;</description>
      <category>Tip&amp;amp;Tech</category>
      <author>파도소리</author>
      <guid isPermaLink="true">https://mydb.tistory.com/249</guid>
      <comments>https://mydb.tistory.com/249#entry249comment</comments>
      <pubDate>Tue, 4 Apr 2017 18:44:34 +0900</pubDate>
    </item>
    <item>
      <title>[HIVE] UNION, SubQuery, With 테이블 합치기 팁.</title>
      <link>https://mydb.tistory.com/248</link>
      <description>&lt;p&gt;다수의 테이블을 합쳐서 통계를 산출 시에 UNION을 많이 사용하게 된다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;UNION과 UNION ALL의 차이는 다들 알고 있으리라 언급하자면 중복 데이터를 제거하는 과정이 UNION에 포함되어있다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;테이블을 합칠 때 UNION으로 합치게 되면 각 테이블마다 정렬이 들어가는 것을 실행계획을 통계 알 수 있다.&lt;/p&gt;&lt;p&gt;(그래서 느리다.)&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;UNION ALL 을 사용하게 되면 중복 상관없이 그냥 합쳐주기만 해서 빠르다.&lt;/p&gt;&lt;p&gt;다수의 테이블인 경우엔 각 테이블마다 중복데이터를 제거해가면서 합치는 것보다 일단 다 합쳐놓고 중복데이터를 제거하는게 빠르다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;실제로 UNION을 이용한 쿼리에선 HIVE의 CBO(Cost-based Optimizer)가 동작하지 않는다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;UNION ALL을 이용하여 테이블을 합치려다가 &lt;u&gt;&lt;a href=&quot;https://cwiki.apache.org/confluence/display/Hive/Common+Table+Expression&quot; target=&quot;_blank&quot; class=&quot;tx-link&quot;&gt;&lt;span style=&quot;color: rgb(0, 85, 255);&quot;&gt;HIVE는 &lt;/span&gt;&lt;/a&gt;&lt;a href=&quot;https://cwiki.apache.org/confluence/display/Hive/Common+Table+Expression&quot; target=&quot;_blank&quot; class=&quot;tx-link&quot;&gt;&lt;span style=&quot;color: rgb(0, 85, 255);&quot;&gt;CTE(Common Table Expression) 을 지원&lt;/span&gt;&lt;/a&gt;&lt;/u&gt;한다는 사실을 알았다.&amp;nbsp;&lt;/p&gt;&lt;p&gt;WITH문으로 더 잘 알려진 이 구문은 오라클 사용자라면 알고 있을 것이다.&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;단 MySQL은 지원하지 않으며, &lt;a href=&quot;https://mariadb.com/kb/en/mariadb/common-table-expressions-overview/&quot; target=&quot;_blank&quot; class=&quot;tx-link&quot;&gt;&lt;u&gt;&lt;span style=&quot;color: rgb(0, 85, 255);&quot;&gt;MariaDB는 10.2.1 버전부터 지원&lt;/span&gt;&lt;/u&gt;&lt;/a&gt;하고 있다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;UNION ALL을 이용하여 테이블을 합치는 방법은 다음 두가지가 있겠다.&lt;/p&gt;&lt;p&gt;1. 서브쿼리를 이용&lt;/p&gt;&lt;p&gt;2. with&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;위 두가지 방법으로 쿼리를 짜보고 실행계획을 보았으나 실행계획까지도 똑같다.&amp;nbsp;&lt;/p&gt;&lt;p&gt;with구문이 더 가독성이 좋다는데... 난 글쎄.. 그냥 쓰고 싶은거 써도 상관없다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;다음 두 쿼리는 동일하다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;blockquote class=&quot;code:sql&quot;&gt;&lt;p&gt;SET TDATE='01'&lt;/p&gt;&lt;p&gt;SELECT COUNT(DISTINCT(usr_key)) FROM (&lt;/p&gt;&lt;p&gt;&amp;nbsp; SELECT mdate, usr_key FROM table1 WHERE mdate&amp;gt;=${hiveconf:TDATE}&lt;/p&gt;&lt;p&gt;&amp;nbsp; UNION ALL&lt;/p&gt;&lt;p&gt;&amp;nbsp; SELECT mdate, usr_key FROM table2 WHERE mdate&amp;gt;=${hiveconf:TDATE}&lt;/p&gt;&lt;p&gt;&amp;nbsp; UNION ALL&lt;/p&gt;&lt;p&gt;&amp;nbsp; SELECT mdate, usr_key FROM table3 WHERE mdate&amp;gt;=${hiveconf:TDATE}&lt;/p&gt;&lt;p&gt;&amp;nbsp; UNION ALL&lt;/p&gt;&lt;p&gt;&amp;nbsp; SELECT mdate, usr_key FROM table4 WHERE mdate&amp;gt;=${hiveconf:TDATE}&lt;/p&gt;&lt;p&gt;) t1&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;blockquote class=&quot;code:sql&quot;&gt;&lt;p&gt;SET TDATE='01'&lt;/p&gt;&lt;p&gt;WITH t1 AS (SELECT usr_key FROM s1&lt;/p&gt;&lt;p&gt;&amp;nbsp; UNION ALL SELECT usr_key FROM s2&lt;/p&gt;&lt;p&gt;&amp;nbsp; UNION ALL SELECT usr_key FROM s3&lt;/p&gt;&lt;p&gt;&amp;nbsp; UNION ALL SELECT usr_key FROM s4&lt;/p&gt;&lt;p&gt;&amp;nbsp; ),&lt;/p&gt;&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; s1 as (SELECT mdate, usr_key FROM table1 WHERE mdate&amp;gt;=${hiveconf:TDATE}),&lt;/p&gt;&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; s2 as (SELECT mdate, usr_key FROM table2 WHERE mdate&amp;gt;=${hiveconf:TDATE}),&lt;/p&gt;&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; s3 as (SELECT mdate, usr_key FROM table3 WHERE mdate&amp;gt;=${hiveconf:TDATE}),&lt;/p&gt;&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; s4 as (SELECT mdate, usr_key FROM table4 WHERE mdate&amp;gt;=${hiveconf:TDATE})&lt;/p&gt;&lt;p&gt;SELECT COUNT(DISTINCT(usr_key)) FROM t1;&lt;br /&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;stackoverflow를 뒤져봐도 subquery와 with은 동일같거나 다름없다고 한다.&lt;/p&gt;&lt;p&gt;차이가 있다면 가독성의 차이와 with문이 recursive한 점인데.. recursive하게 활용하는 with문에 대해서 더 언급하고 싶었으나 길어지니 나중에..&amp;nbsp;&lt;/p&gt;</description>
      <category>Programming/Bigdata / DataMining</category>
      <category>hive</category>
      <category>HQL</category>
      <category>SQL</category>
      <category>union</category>
      <category>with문</category>
      <category>서브쿼리</category>
      <author>파도소리</author>
      <guid isPermaLink="true">https://mydb.tistory.com/248</guid>
      <comments>https://mydb.tistory.com/248#entry248comment</comments>
      <pubDate>Mon, 9 Jan 2017 11:22:45 +0900</pubDate>
    </item>
    <item>
      <title>git 관련 자료 모음</title>
      <link>https://mydb.tistory.com/247</link>
      <description>&lt;P&gt;팀블로그 자료 퍼옴&lt;/P&gt;
&lt;P&gt;&lt;A href=&quot;http://wp.me/p7MUY6-1U&quot;&gt;http://wp.me/p7MUY6-1U&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&lt;EMBED height=300 width=400 src=http://wp.me/p7MUY6-1U wmode=&quot;transparent&quot; allowScriptAccess=&quot;never&quot;&gt;&lt;/EMBED&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <category>Programming/기타 / 알고리즘</category>
      <author>파도소리</author>
      <guid isPermaLink="true">https://mydb.tistory.com/247</guid>
      <comments>https://mydb.tistory.com/247#entry247comment</comments>
      <pubDate>Thu, 11 Aug 2016 16:01:18 +0900</pubDate>
    </item>
    <item>
      <title>Kaggle(캐글) &amp;ndash; 데이터 과학자들의 링</title>
      <link>https://mydb.tistory.com/246</link>
      <description>&lt;p&gt;팀 블로그에 내가 쓴 글을 옮겨옴&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;http://wp.me/p7MUY6-q&quot;&gt;http://wp.me/p7MUY6-q&lt;/a&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;embed src=&quot;http://wp.me/p7MUY6-q&quot; width=&quot;400&quot; height=&quot;300&quot; allowscriptaccess=&quot;never&quot;&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;</description>
      <category>Programming/Bigdata / DataMining</category>
      <author>파도소리</author>
      <guid isPermaLink="true">https://mydb.tistory.com/246</guid>
      <comments>https://mydb.tistory.com/246#entry246comment</comments>
      <pubDate>Thu, 11 Aug 2016 15:59:44 +0900</pubDate>
    </item>
    <item>
      <title>[Python 3.4] 멀티쓰레딩과 멀티프로세싱</title>
      <link>https://mydb.tistory.com/245</link>
      <description>&lt;p&gt;날려먹고 이 글이 3번째 쓰는 글이다.&lt;/p&gt;
&lt;p&gt;이번이 마지막이길.&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;파이썬 쓰레드는 GIL(Global Interpreter Lock) 때문에 오히려 싱글쓰레드보다 속도저하가 일어난다는 사실은 파이썬 개발자라면 다 알 것이다.&lt;/p&gt;
&lt;p&gt;모른다면 관련 글인 아래를 참고...&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;ul style=&quot;list-style-type: square;&quot;&gt;&lt;li&gt;하용호 - 파이썬으로 클라우드 하고 싶어요 :&amp;nbsp;&lt;a href=&quot;http://www.slideshare.net/kthcorp/h32011c6pythonandcloud-111205023210phpapp02&quot; target=&quot;_blank&quot; class=&quot;tx-link&quot;&gt;http://www.slideshare.net/kthcorp/h32011c6pythonandcloud-111205023210phpapp02&lt;/a&gt;&lt;/li&gt;&lt;li&gt;파이썬의 멀티쓰레딩과 멀티프로세스 : &lt;a href=&quot;http://qkqhxla1.tistory.com/m/post/270&quot; target=&quot;_blank&quot; class=&quot;tx-link&quot;&gt;http://qkqhxla1.tistory.com/m/post/270&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;위 글에선 싱글스레드로 3.34초가 나오는 연산이 듀얼스레드로 4.65초가 나온다고 했다.&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;위 내용은 오래된 내용으로 파이썬 2.x 버전에선 계속 나타날 것이라 생각한다.&lt;/p&gt;
&lt;p&gt;하지만 현재까지도 파이썬은 3.x버전으로 계속 업그레이드 되고 있으며, 파이썬 3.2 Release Note 를 보면 이 GIL를 수정했다는 내용이 있다.&lt;/p&gt;
&lt;p&gt;(두근두근)&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;그래서 현재 쓰는 3.4.4 버전의 파이썬은 어떨지 다시 테스트 해보았다.&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;사용한 코드는 위 글에서 작성된 코드 그대로인데, 다음과 같이 연산횟수를 4배 늘렸다.&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;blockquote class=&quot;tx-quote-tistory&quot;&gt;&lt;script src=&quot;https://gist.github.com/namioto/e0d535b50214c18163255840b55be0d2.js&quot;&gt;&lt;/script&gt;&lt;/blockquote&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;div class=&quot;txc-textbox&quot; style=&quot;border: 1px dashed rgb(193, 193, 193); padding: 10px; background-color: rgb(238, 238, 238);&quot;&gt;&lt;p&gt;Result : &amp;nbsp;3199999960000000 time = 8.915481090545654&lt;/p&gt;&lt;/div&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;8.9초가 소요되었다.&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;그럼 이걸 쓰레드 2개로 연산하면 8.9초 보다 느려지는지 확인 해 보겠다.&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;blockquote class=&quot;tx-quote-tistory&quot;&gt;&lt;script src=&quot;https://gist.github.com/namioto/36eecdabcb1bb41236b124c5b3d9a0e4.js&quot;&gt;&lt;/script&gt;&lt;/blockquote&gt;&lt;div class=&quot;txc-textbox&quot; style=&quot;border: 1px dashed rgb(193, 193, 193); padding: 10px; background-color: rgb(238, 238, 238);&quot;&gt;&lt;p&gt;Result : &amp;nbsp;3199999960000000 time = 8.185956001281738&lt;/p&gt;&lt;/div&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;8.1초로 느려지는게 아니고 아주 조금 빨라졌다..?&lt;/p&gt;
&lt;p&gt;확실히 GIL이 개선되었다고 할 수 있을 것 같다.&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;쓰레드를 4개로도 돌려본 결과도 공유한다.&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;blockquote class=&quot;tx-quote-tistory&quot;&gt;&lt;script src=&quot;https://gist.github.com/namioto/c6c7b3c94b8de2c862303d7c92eb9b8c.js&quot;&gt;&lt;/script&gt;&lt;/blockquote&gt;&lt;div class=&quot;txc-textbox&quot; style=&quot;border: 1px dashed rgb(193, 193, 193); padding: 10px; background-color: rgb(238, 238, 238);&quot;&gt;&lt;p&gt;Result : &amp;nbsp;3199999960000000 time = 7.8109190464019775&lt;/p&gt;&lt;/div&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;7.8초로 빨라지는게 보인다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;확실히 과거 파이썬과는 다른 모습을 보여서 I/O 부하가 큰 작업 등은 이제 쓰레드를 이용해도 될 것 같다는 생각이 든다.&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;마지막으로 멀티프로세싱으로 프로세스 2개를 생성해서 같은 연산도 해보도록 하겠다.&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;blockquote class=&quot;tx-quote-tistory&quot;&gt;&lt;script src=&quot;https://gist.github.com/namioto/3643c0bdea35b74ab11a16038097e01e.js&quot;&gt;&lt;/script&gt;&lt;/blockquote&gt;&lt;div class=&quot;txc-textbox&quot; style=&quot;border: 1px dashed rgb(193, 193, 193); padding: 10px; background-color: rgb(238, 238, 238);&quot;&gt;&lt;p&gt;Result : &amp;nbsp;3199999960000000 time = 4.879086017608643&lt;/p&gt;&lt;/div&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;4.8초.&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-size: 24pt; font-family: Gungsuh, 궁서, serif;&quot;&gt;결론 : 그냥 멀티 프로세싱 쓰자.&lt;/span&gt;&lt;/p&gt;</description>
      <category>Programming/Python</category>
      <category>multiprocessing</category>
      <category>multithreading</category>
      <category>Python</category>
      <author>파도소리</author>
      <guid isPermaLink="true">https://mydb.tistory.com/245</guid>
      <comments>https://mydb.tistory.com/245#entry245comment</comments>
      <pubDate>Mon, 8 Aug 2016 17:09:09 +0900</pubDate>
    </item>
    <item>
      <title>[Node.js] forever 로그 찍지 않기</title>
      <link>https://mydb.tistory.com/244</link>
      <description>&lt;p&gt;# forever start -a -l /dev/null server.js&lt;/p&gt;&lt;p&gt;# forever list&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;info: &amp;nbsp; &amp;nbsp;Forever processes running&lt;/p&gt;&lt;p&gt;data: &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;uid &amp;nbsp;command &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;script &amp;nbsp; &amp;nbsp;forever pid &amp;nbsp; id logfile &amp;nbsp; uptime&lt;/p&gt;&lt;p&gt;data: &amp;nbsp; &amp;nbsp;[0] iilT /usr/local/node/bin/node server.js 24219 &amp;nbsp; 24224 &amp;nbsp; &amp;nbsp;/dev/null 0:0:0:9.907&lt;/p&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;잘 된다. a옵션을 빼면 /dev/null을 찾을 수가 없다고 에러가 난다.&lt;/div&gt;&lt;div&gt;아래는 옵션 설명&lt;/div&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;-a, --append &amp;nbsp; &amp;nbsp; Append logs&lt;/p&gt;&lt;p&gt;-l &amp;nbsp;LOGFILE &amp;nbsp; &amp;nbsp; &amp;nbsp;Logs the forever output to LOGFILE&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;</description>
      <category>Programming/기타 / 알고리즘</category>
      <category>Forever</category>
      <category>nodejs</category>
      <author>파도소리</author>
      <guid isPermaLink="true">https://mydb.tistory.com/244</guid>
      <comments>https://mydb.tistory.com/244#entry244comment</comments>
      <pubDate>Fri, 3 Jun 2016 16:03:37 +0900</pubDate>
    </item>
    <item>
      <title>[Anaconda] 스타트.</title>
      <link>https://mydb.tistory.com/243</link>
      <description>&lt;p&gt;R을 이용해 데이터 분석을 하다가 Anaconda를 접하게 되었다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;데이터 분석과 관련된 파이썬 패키지들을 손쉽게 설치하고 다룰 수 있다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center; clear: none; float: none;&quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display: inline-block; width: 860px;  height: auto; max-width: 100%;&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/2537D241574BE9972D&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F2537D241574BE9972D&quot; width=&quot;860&quot; height=&quot;334&quot; filename=&quot;이미지 4.png&quot; filemime=&quot;image/jpeg&quot; style=&quot;&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;관련글은 아래에.&lt;/p&gt;&lt;ul style=&quot;list-style-type: square;&quot;&gt;&lt;li&gt;아나콘다 설치법 :&amp;nbsp;&lt;a href=&quot;https://medium.com/@younggun/anaconda-fe67e9c9709d#.51374wgvd&quot; target=&quot;_blank&quot; class=&quot;tx-link&quot;&gt;https://medium.com/@younggun/anaconda-fe67e9c9709d#.51374wgvd&lt;/a&gt;&lt;/li&gt;&lt;li&gt;아나콘다 공식홈페이지 :&amp;nbsp;&lt;a href=&quot;https://www.continuum.io&quot; target=&quot;_blank&quot; class=&quot;tx-link&quot;&gt;https://www.continuum.io&lt;/a&gt;&lt;/li&gt;&lt;li&gt;파이썬을 이용한 시스템 트레이딩(기초편) :&amp;nbsp;&lt;a href=&quot;https://wikidocs.net/book/110&quot; target=&quot;_blank&quot; class=&quot;tx-link&quot;&gt;https://wikidocs.net/book/110&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;</description>
      <category>Programming/Python</category>
      <category>Anaconda</category>
      <category>아나콘다</category>
      <category>파이썬</category>
      <author>파도소리</author>
      <guid isPermaLink="true">https://mydb.tistory.com/243</guid>
      <comments>https://mydb.tistory.com/243#entry243comment</comments>
      <pubDate>Mon, 30 May 2016 16:20:47 +0900</pubDate>
    </item>
    <item>
      <title>[Javascript] 패커로 괜찮은 사이트들.</title>
      <link>https://mydb.tistory.com/242</link>
      <description>&lt;p&gt;자바스크립트를 압축할 일이 생길 때 참고할 만한 사이트들.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;http://closure-compiler.appspot.com/&quot; target=&quot;_blank&quot; class=&quot;tx-link&quot;&gt;http://closure-compiler.appspot.com/&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;http://dean.edwards.name/packer/&quot; target=&quot;_blank&quot; class=&quot;tx-link&quot;&gt;http://dean.edwards.name/packer/&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;이런걸 자동으로 해주는 프레임웍도 있었으면 좋겠지만 아직 찾진 못했다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;</description>
      <category>Programming/Web Language</category>
      <category>JavaScript</category>
      <category>압축</category>
      <category>자바스크립트</category>
      <category>패킹</category>
      <author>파도소리</author>
      <guid isPermaLink="true">https://mydb.tistory.com/242</guid>
      <comments>https://mydb.tistory.com/242#entry242comment</comments>
      <pubDate>Mon, 30 May 2016 16:12:54 +0900</pubDate>
    </item>
    <item>
      <title>[WEB] 부트스트랩3에서 input password padding 버그 이슈</title>
      <link>https://mydb.tistory.com/241</link>
      <description>&lt;p&gt;Bootstrap3 환경에서 input 태그에 padding 속성을 먹이면 유독 password 타입은 출력이 이상하게 나오는 버그가 있다.&lt;/p&gt;&lt;p&gt;padding이 심하게 먹힌다고 해야하나..? 밀려서 보이지 않는다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;몰론 크롬이나 IE에선 정상으로 나타나나 사파리 환경에서는 제대로 보이지 않는 문제가 있다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;stackoverflow.com 에 이와 관련된 글을 찾았다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;http://stackoverflow.com/questions/24090834/bootstrap-3-input-padding-issue&quot; target=&quot;_blank&quot; class=&quot;tx-link&quot;&gt;http://stackoverflow.com/questions/24090834/bootstrap-3-input-padding-issue&amp;nbsp;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;부트스트랩은 기본 높이가 설정 되어 있다는 것.&amp;nbsp;&lt;/p&gt;&lt;p&gt;해결 방법은 height:auto; 를 추가해 주면 된다.&lt;/p&gt;</description>
      <category>Programming/Web Language</category>
      <category>bootstrap3</category>
      <category>input password padding</category>
      <author>파도소리</author>
      <guid isPermaLink="true">https://mydb.tistory.com/241</guid>
      <comments>https://mydb.tistory.com/241#entry241comment</comments>
      <pubDate>Mon, 30 May 2016 16:10:00 +0900</pubDate>
    </item>
    <item>
      <title>[MySQL] OSX에서 mysql.server stop로 종료가 안되는 현상</title>
      <link>https://mydb.tistory.com/240</link>
      <description>&lt;p&gt;설치 및 실행 과정도 이상하게 생각보다 힘들게 했는데, 종료까지 말썽이다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;인터넷에 검색하니 mysql.server stop 를 호출하면 된다던데.. 종료에 성공했다고 뜨나, 종료는 되어있지 않았다.&lt;/p&gt;&lt;p&gt;재 시도 하면 pid 파일을 updating 문제가 있다고 에러가 납니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;먼저 pid 파일의 updating 문제는 pid 파일의 권한 설정 문제로 해결 했다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;경로는 /usr/local/var/mysql/&lt;/p&gt;&lt;p&gt;chmod 777 유저명.local.pid&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;걍 이렇게 777줘도 리스타트하면&amp;nbsp;pid가 재 생성되서 지가 알아서 맞는 권한으로 찾아가니 상관없다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;hr style=&quot;display:block; border: black 0 none; border-top: black 1px solid; height: 1px&quot;&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;이젠 종료할 때 에러는 나지 않으나 (항상 성공), 하지만 실제 종료는 되지 않는다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;pkill 로 mysqld를 종료해봐야 mysqld_safe 놈이 감시하고 계속 실행한다.&amp;nbsp;&lt;/p&gt;&lt;p&gt;mysqld_safe 프로세스를 죽였으나 이놈도 계속 좀비같이 살아난다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;이럴 땐 osx의 homebrew를 체크 해 봐야한다.&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;이 글을 참조 했는데 (&lt;a href=&quot;https://robots.thoughtbot.com/starting-and-stopping-background-services-with-homebrew&quot; target=&quot;_blank&quot; class=&quot;tx-link&quot;&gt;https://robots.thoughtbot.com/starting-and-stopping-background-services-with-homebrew&lt;/a&gt;)&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;&lt;b&gt;launchctl unload [plist경로]&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;를 하랜다. 경로는&amp;nbsp;~/Library/LaunchAgents 또는&amp;nbsp;/Library/LaunchAgents 에 저장되어 있다.&lt;/p&gt;&lt;p&gt;따라서 뭐 이런식으로 하면 되는건데&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;launchctl unload ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: left;&quot;&gt;난 해당 경로에 파일이 없었다.&amp;nbsp;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: left;&quot;&gt;찾아보니 /usr/local/opt/mysql/homebrew.mxcl.mysql.plist 가 있길래 요놈으로 unload 시켜줬더니 된다.&lt;/p&gt;&lt;p style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: left;&quot;&gt;그 이후로는 필요할 때만 mysql.server start / stop 로 켜고 꺼고 할 수 있다.&lt;/p&gt;&lt;p style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: left;&quot;&gt;&lt;hr style=&quot;display:block; border: black 0 none; border-top: black 1px solid; height: 1px&quot;&gt;&lt;/p&gt;&lt;p style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: left;&quot;&gt;더 나은 방법으론 brew services&amp;nbsp;를 설치해서 brew services list 때려서 mysql이 목록에 있다면&amp;nbsp;&lt;/p&gt;&lt;p style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: left;&quot;&gt;brew services start mysql&lt;/p&gt;&lt;p style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: left;&quot;&gt;호출하는게 더 간편하다.ㅜㅠㅜㅜㅠㅠㅠㅠㅠㅠ&lt;/p&gt;</description>
      <category>Programming/Database</category>
      <category>mariadb</category>
      <category>MySQL</category>
      <category>OSX</category>
      <category>마리아DB</category>
      <category>맥</category>
      <author>파도소리</author>
      <guid isPermaLink="true">https://mydb.tistory.com/240</guid>
      <comments>https://mydb.tistory.com/240#entry240comment</comments>
      <pubDate>Thu, 21 Apr 2016 10:56:58 +0900</pubDate>
    </item>
  </channel>
</rss>