워드프레스 자동 업그레이드 중 Briefly unavailable for scheduled maintenance. Check back in a minute. 메세지가 나올 경우

WWW
자동업그레이드 도중 웹사이트의 접속이 끊길경우 "예약되어 있는 유지보수를 위해 잠시 사용할 수 없습니다. 잠시 후에 다시 확인하세요. (Briefly unavailable for scheduled maintenance. Check back in a minute.)" 메세지가 나올 경우에 재 접속을 하여도 관리자 페이지로 들어갈수 없습니다. 이럴경우에 웹으로는 더이상 어떠한 조치를 취할수 없습니다. 해당 문제를 해결하기 위해서 FTP로 워드프로세스가 설치된 디렉토리에 방문하여서 ".maintenance" 파일을 삭제후 다시 접속을 하면은 정상적으로 접속 할 수 있습니다. 저도 이번에 처음 겪어보는 일이라서 검색을 해 볼 생각도 하지 않고, 몇시간을 그냥 방치해두었더니 결국은 접속을 할 수 없어서 검색을 해보고 삭제 하고 나니 정상적으로 접속이되어서 블로그를 관리 할 수 있게 되었습니다.
Read More
SFCA는 포기합니다 ㅠㅠ

SFCA는 포기합니다 ㅠㅠ

ACTS/SFCA
현재 운영하는 서비스중 ACTS, SFCA가 있습니다. 이 2가지 모두 한곳을 바라보고 사용을 하고 있지만 앞으로 SFCA의 운영을 점진적으로 포기할 생각입니다. ACTS에서 사용하지 못하는 기능을 SFCA에 넣으려고 처음에 계획을 가지고 만든것이지만 사용상에 복잡함만 더하고 간결하지 못해서 처음 의도된 개발과 전혀 다른 길을 계속 가게 될것 같아서 사용자가 적은 시점에서 모두 포기할 생각입니다. 그와 함께 현재 ACTS를 5 버전대에서 6버전대로 이관을 하고 새롭게 개발을 하지만 SFCA에 녹아든 형태와 기존 ACTS의 간결함을 모두 가지도록 현재 개발중에 있습니다. 물론 ACTS에 맞춰서 새롭게 기능을 추가적으로 개발을 하지만, 속도, 간결. 직관성을 생각해서 개발을 하게 될것이며, 기존에 문제가되는 부분들을 최대한 보완하는 방법으로 가져가 생각입니다. 하지만 항상 개발 소식만 전하고 정말 하는지 말을 하실수 있지만, ACTS5 와 ACTS6은 서로 호환을 하기 때문에 제 나름대로 개발과 테스트 과정을 거치고 있습니다. 정말 기능을 하나하나 쪼개서 만들기고 테스트 하고 검토하고 다시…
Read More

PHP 7.2로 업그레이드

일상
현재 사용하고 있는 서버와 별도의 서비스용 서버등 제 관리하에 있는 모든 서버를 시간을 들려서 모두 업그레이드 하였습니다. 업그레이드 내용을 블로그에 남기는 이유는 나중에 제가 업그레이드 시점을 알기 위한 용도 이기도 하지만, 제 서버에서 작업하시는 몇 안되는분들이 놀라실까봐 적습니다. 이 글을 작성하는 시점에서 다른 사람이 이용하는 서버의 작업을 모두 마쳤으며, 현재는 문제가 없는것으로 보여집니다. 하지만, 문제가 생길경우에는 평소에 소통하는 채널을 통해서 알려주시면은 조치해드리겠습니다. 일단 업그레이드 작업을 하고 나서 사용해본 소감은 이전 버전보다 확실히 빠르다는 느낌이 있습니다. 아직 정확한 테스트를 해 보지 않았지만 눈에 보이는 시점에서 체감적으로 빠르면 이전보다 개미 눈꼽만큼이라도 빨라지는것이라고 판단이 되기에 아주 좋은 상태입니다. 다수의 서버를 관리하다 보니 업그레이드 작업을 하나하나 확인하고 하는 작업은 힘들지만 작업을 마치고 나서 결과가 눈에 보일정도라서 기분은 정말 좋은 편입니다. 단순히 서버상의 PHP 버전 업그레이드를 알리는 두서 없는 글입니다.
Read More

ACTS 서버 점검 완료

ACTS/SFCA
안녕하세요? 정말 ACTS관련에 대해서 오랜만에 글을 작성합니다. 제가 사회생활이 바쁘다는 핑개로 ACTS 서버 점검을 차일 피일 미루던것을 점검을 하였습니다. 이번 점검에서는 ACTS 서버내에서 데이터를 가공하기 위해서 돌던 프로그램의 로직도 모두 직접 점검하고, 실행 시점이나 실행 방법등에 대해서 다소 수정을 가하는 방식으로 하였습니다. 기존의 DB에 대해서도 불필요한 형식을 맞도록 수정하고, 검색에 용이하도록 DB상에서 손을 많이 봤습니다. 이번 점검으로 ACTS 프로그램 접속 시간이 많이 단축되고 반응속도가 예전만큼 나올것이라고 생각을 합니다. 이번 종합 점검으로 인해서 서버의 자원이 상당히 여유로워 지고 많이 남기 때문에 다른 일을 좀 더 할 수 있는 여유공간이 생김으로 인해서 좀 더 양질의 데이터를 제공할 수 있을 것이라고 생각을 합니다.
Read More

Jquery 모음

WWW
INPUT BOX에 사용자가 입력할 경우에 keyup Event를 통해서 실시간으로 계산해서 다른 InputBox에 값 넣어주기 // $(document).on('propertychange change keyup paste input' , "input[name='이름']", function(){ //필요한값 획득 var objStandardS0 = $(this).parents("tr").find('input[name="이름[]"]').val(); var objStandardS1 = $(this).parents("tr").find('input[name="이름"]').val(); //계산 var objStandard = objStandardS0 - objStandardS1 / 2; // $(this).parents("tr").find('input[name="이름"]').val(objStandardS0 +"*"+objStandardS1+"*"+objStandard.toFixed(1)); // 소수점 1자리까지 표현 $(this).parents("tr").find('input[name="이름"]').val(objStandard.toFixed(1)); }); 모달창을 닫기 // 모달창 닫기 event.preventDefault(); $("#modal2").hide(); $('.jquery-modal').hide(); 동적으로 Table에 TR 행을 추가하기 var TrLength = $('#insertTbl tbody tr').length; TrLength = TrLength + 1; html += "<tr>"; html += "<td>번호</td>"; html += "</tr>"; $('#insertTbl > tbody').append(html); // selectbox 의 값 선택하기 $('#ID이름' + TrLength).val(objUnit).prop("selected", true); 동적 추가한 TR을 삭제하고 순서에 대한 번호를 새롭게 다시 표시해주기 $(this).parent().parent().remove(); // 해당행 삭제 var rowNum = 1; $('#insertTbl tbody tr').each(function() { $('#rowNum', this).text(rowNum); rowNum++; }); Button 을 클릭시에 모달창을 띄우기 // 모달창 $(document).on("click","#qualityStandards",function(){…
Read More

2020년 Happy New Year?

일반
2020년이 되었습니다. 일단 방문해 주시는 여러분께 감사드립니다. 방문해 주시는분이 있기에 블로그가 존재하는 이유이기도 하지 않을까 싶습니다. 저 혼자서도 블로그에 글을 남기지만 방문해주시는분이 있어서 더욱 알찬 블로그로 발전해 나갈수 있는것이라고 생각을 합니다. 올 한해는 제게 있어서 도전과 전환점이 되는 한해가 될 것이라고 생각을 합니다. 지금도 유지하고 있는 ACTS가 이제 년 단위로 말할 정도로 되었으며 현재도 계속 서비스를 유지 할려고 생각을 하고 있기에 이 부분이 저의 첫 도전이 될것이라는 생각입니다. ACTS는 제게 있어서 이제 소중한 하나의 작품이라고 말을 할 수 있습니다. 저는 관심이 줄고 있지만 이 서비스를 유지 하기 위해서 하는 일이 제게 있어서 배운 지식을 활용하고 좀 더 좋은 서비스 나은 서비스를 만들기 위한 밑거름이 되고 있습니다. 제게 있어서 지금까지 개인으로서 이만큼 큰 서비스를 운영한 경험이 없습니다. 최소한의 자원으로 현재 최대의 효율을 도출하기 위해서 항상 고민하고 공부를 하는 저의 원동력이자 계기가…
Read More
도메인 자동이동 해제

도메인 자동이동 해제

일상
안녕하세요. 현재 도메인의 truds.kr의 도메인을 입력시 자동적으로 이동하도록 설정을 하고 있습니다. 하지만, 이제 서브도메인이 정상적으로 입력이 되지 않으면은 현재 보고 계신 블로그로 이동을 하지 않도록 설정하였습니다. 자동으로 이동을 푼 이유에 대해서 설명을 드리자면은 서브도메인을 다수 이용함에 있어서 오타가 있어도 이동을 권한하게 되었지만 이 작업으로 인해서 블로그 방문자의 정확한 이유도 알지 못하고 그냥 방문자가 올라가고 있습니다. 저야 방문자가 늘어나면 좋은것이라고 생각을 하는것도 있지만, 정말 필요해서 오시는분들이 아니고서야 해당 작업에 대해서 그렇게 좋은 일이 아니라고 판단을 해서 풀게 되었습니다. 크리스마스를 기점으로 더이상 서브도메인 없이는 블로그 방문을 하지 못하도록 하였으니 정확하지 않은 허수 방문자가 없을것이라고 생각을 합니다. 정말 이용하시는분이라면은 blog.truds.kr 에 대해서 즐겨찾기를 해 두었을것이라고 생각을 하기 때문에 이용을 하시는데 불편함이 없을것이라고 생각을 합니다. 겨울이지만 시원하게 물이 흐르는 모습을 한번 올려 봅니다. 갑갑한 일은 모두 풀어 버리시고 즐거운 크리스마스를 보내십시오.
Read More

할일도 많고! 하고 싶은것도 많은데…

일상
※ 글에 두서가 없으며 개인적인 생각을 한번 쓰고 싶어서 적은 글이니 심심풀이삼으로도 읽을 글이 아닙니다.   사회인이라고 해야 할까? 사회에 소속되어서 살아 가다보니 정말 개인적인 시간을찾기란 쉽지가 않습니다. 항상 뭔가 하려고 하면은 다른 일이 생길 수  있기 때문에 조금은 개인의 시간이 필요할때가 많이 필요합니다. 그런 바램으로 개인적인 시간이 주어지면은 정말 오~랜만에 돌아온 개인적인 시간에 무엇을 해야 될지 갈팔지팡을 하게 되어 버립니다. 그 상태가 되면은 뭔가 하지 않으면은 진정이 되지도 않고, 무엇인가에 메달리지 않으면은 제 자신이 너무 무기력하게 변하는 상태가 되어 버립니다. 그런 점을 타파하기 위해서 여러가지 하고 싶은것이 떠 오를때마다 뭔가 하다보니  소위 말하는 벌여놓은 일이 많은데 실질적으로 그 일이 결과로 이어지지 않는것도 많습니다.  최근에는 제가 정말 마음먹고 공개한 프로그램의 일을 해야 하는데, 아직도 걸음마 단계 입니다. 이런 부분을 줄여보고자 하지만, 제 천성이 좋지 못한건지 매일 새로운것에 도전을 해보고 싶고…
Read More

[MySQL] 패스워드 정책 변경

Database
unix_socket 방식을 mysql_native_password 으로 변경하는 방법입니다 SHOW VARIABLES LIKE 'validate_password%'; << 패스워드 정책 SET GLOBAL validate_password_policy=LOW; <- MEDIUM으로 변경도 가능 SELECT password('변경할PASSWORD'); UPDATE user SET plugin='mysql_native_password' WHERE user='root'; ALTER USER 'root'@'localhost' identified with mysql_native_password by '변경할PASSWORD'; ALTER USER 'root'@'localhost' IDENTIFIED with mysql_native_password USING PASSWORD("변경할PASSWORD"); show grants for 'root'@'localhost'; flush privileges; 이렇게 하여도 적용이 안될때가 가끔있는데 서버 재시작을 해주시기 바랍니다. 대부분 변경이 가능하리라 봅니다.
Read More
ACTS/SFCA의 DB를 새롭게  개발중입니다.

ACTS/SFCA의 DB를 새롭게 개발중입니다.

ACTS/SFCA
현재 ACTS, SFCA의 자료가 계속 누적이 되다 보니 서버 자체적으로 하드웨어의 성능이 높아야 하는 문제가 계속 발생중이 있습니다. 이 문제를 해결하기 위해서 현재의 DB의 구조를 그대로 유지하면서 새롭게 개발을 진행중에 있습니다. 새롭게 개발되는 DB와 수집프로그램과 데이터를 정체하는 프로그램은 최소한의 동작으로 최대한의 효율을 추구하기 위해서 설계부터 시간과 공을 들여서 현재 준비중에 있습니다. 사용하시는분들에게 최대한 오래동안 서비스를 제공하기 위해서 현재도 계속 노력을 하기 있지만, 저의 사회생활등을 하다보니 빠르게 제공하지 못하고 있는점이 정말 죄송합니다. 최대한 쉬는날의 시간을 줄여서 빠르게 교체해서 서비스가 빠르게 제공될 수 있도록 노력해 보겠습니다. 기간이 특별히 정해짐이 없는것은 저의 생활 스케쥴이 주말에는 유동적이여서 장담을 할 수가 없어서 이렇게 글을 적을수 밖에 없는점이 정말 죄송합니다.
Read More

c# 소스인듯….

CSharp
DataTable dt = new DataTable(); DataTable dt1 = new DataTable(); dt = (DataTable)DataSource; foreach (DataColumn dc in dt.Columns) { dt1.Columns.Add(new DataColumn(dc.ColumnName, dc.DataType)); } if (dt.Rows.Count > 0) { dt1.Rows.Clear(); DataRow GRIDPRINT_DR = dt1.NewRow(); for (int k = 0; k < dt1.Columns.Count; k++) { GRIDPRINT_DR[k] = dt.Rows[RowNumber][k].ToString().Clone(); } dt1.Rows.Add(GRIDPRINT_DR.ItemArray); ((XRSubreport)sender).ReportSource.DataSource = dt1; if(RowNumber < dt.Rows.Count) { RowNumber++; } }
Read More