Dev Blog

스크립트 & 소스코드 공유

실무에서 유용하게 쓰는 스크립트와 코드 조각을 블로그 게시판으로 저장하고 공유합니다.

총 110건의 글

CSS width를 콘텐츠 크기에 맞게 지정하기 (fit-content)

요소의 너비를 콘텐츠 크기에 맞게 자동으로 지정하는 CSS 기법을 보여주는 CodePen 예제다. width: fit-content를 사용하면 블록 요소가 화면 전체가 아닌 내용만큼만 너비를 차지하도록 줄어들며, 인라인 요소나 버튼처럼 자연스러운 크기를 만들 때 유용하다.

See the Pen Untitled by H J (@H-J-the-typescripter) on CodePen.

텍스트가 이미지 주변을 감싸도록 배치하기 (float)

이미지 주변으로 텍스트가 자연스럽게 흐르도록 배치하는 CSS float 예제다. 이미지에 float: left나 right를 적용하고 margin으로 여백을 조절하면, 본문 텍스트가 이미지 옆과 아래를 감싸는 신문 기사 형태의 레이아웃이 만들어진다. 동작을 확인할 수 있는 CodePen 데모를 포함한다.

See the Pen Untitled by H J (@H-J-the-typescripter) on CodePen.

MySQL 데이터베이스 전체 백업과 복구 방법 (mysqldump)

mysqldump를 이용한 MySQL 백업과 복구 방법을 정리한 글이다. 특정 DB·특정 테이블 단위 백업/복구, 여러 DB를 한 번에 백업하는 --databases 옵션, 전체 DB를 백업하는 --all-databases, 기존 테이블을 삭제하고 복구하는 --add-drop-table 옵션의 차이를 명령어 예제로 설명한다.

  • 특정 데이타베이스 하나만을 백업

백업형식 : myslqdump -u DB계정명 -p 백업대상데이터베이스명 > 저장할파일명

복구형식 : mysql -u DB계정명 -p 복구할테이터베이스명 < 저장할파일명

./mysqldump -u root -p mysql > mysql.sql //mysql 디비 백업 예

./mysql -u root -p mysql < ./mysql.sql //mysql 디비 복구 예

// 위 백업결과물인 sql 파일은 디비를 생성하지는 않는다.. 다시말해 복구하려는 디비에 mysql이란 디비가 없다면 복구가 되지않는다.... 이점 유의

// 복구하려는 mysql 디비에 테이블이 이미 존재한다면 복구 실패... sql 파일에서 해당 디비의 테이블을 생성하므로.. 따라서 특정 데이타베이스 하나만을 복구 할 시에는 데이타베이스의 이름만 생성한 다음에 위 방법의 복구하여야 함

  • 특정 데이타베이스의 특정 테이블 하나만을 복구 백업

백업형식 : myslqdump -u DB계정명 -p 데이터베이스명 테이블명 > 저장할파일명

복구형식 : mysql -u DB계정명 -p 데이터베이스명 < 저장할파일명

./mysqldump -u root -p mysql user > user.sql

./mysql -u root -p mysql < user.sql

  • 여러개의 데이터베이스 한번에 백업과 복구

백업형식 : mysqldump -u root -p --databases [옵션] DB1 [DB2 DB3] > 파일명

복구방법 : mysql -u root -p < 파일명

./mysqldump -u root -p --databases mysql test > dbs.sql //mysql, test 디비를 백업

./mysql -u -root -p < dbs.sql //백업된 두 디비를 복구

//--databases 옵션 시 일반 백업과 달리 "CREATE DATABASE ..."문과 "USE DB .." 문이 추가됨

//달리 애기하면 DB를 생성할 필요가 없이 바루 디비가 생성되고 생성된 디비로 전환되고 테이블을 생성하고 인서트로 데이타를 붓는다.. 데이타베이스를 지정하면 안됨

  • Mysql 의 전체 데이타베이스 백업

백업형식 : ./mysqldump -u root -p --all-databases > 파일명.sql

복구형식 : mysql -u root -p < 파일명.sql

//원본 데이타베이스명과 동일한 디비가 생성됨

  • 기존 테이블 삭제후 백업된 파일로 복구를 위한 백업

(mysqldump문으로 데이타베이스 백업 시 각각의 create table문 앞에 drop table문을 삽입한 형태가 된다)

백업형식 : ./mysqldump -u root -p --add-drop-table test > test.sql

//test 데이타베이스를 기존 태이블 삭제문을 추가하여 백업한다

복구형식 : ./mysql -u root -p test < test.sql

//기존 테이블을 삭제하고 복구한다는것에 유의

1、查看库:show databases;

2、建立数据库: create database 库名;

3、选择数据库:use 库名;

4、查看库下的所有表:show tables;

5、查看表结构 :desc表名;(describe缩写)

6、建立数据表:

use 库名;

create table 表名 (字段名 varchar(20)字符串, 字段名 char(1));

7、修改表名:rename table oldname to newname;

8、往表中插入记录:insert into 表名values (‘hyq’,‘m’);

9、显示表中的记录:select * from 表名;

10、更新表中数据:

update 表名 set 字段名1=‘a’, 字段名2=‘b’ where 字段名3=‘c’;

多个字段更新,用逗号隔开

自增 update myTable set vipczz=vipczz+1 where vip=1;

11、将表中记录清空:delete from表名 where id=1;

12、删除数据表:drop table 表名;

13、删除数据库:drop database 库名;

EditPlus 찾기·바꾸기에서 정규표현식 사용하기

EditPlus의 찾기·바꾸기 기능에서 정규식을 사용해 문자열을 치환하는 방법이다. PHP 버전이 올라가며 오류를 내는 $arr[string] 구문을 $arr['string']으로 바꾸는 예제를 통해, 대괄호 안 문자열을 찾는 정규식 \[([A-Za-z][A-Za-z0-9_]*)\]과 괄호 그룹을 참조하는 \1 치환 문법을 설명한다.

에디트플러스의 찾기와 바꾸기 기능에서 정규표현식을 사용할 수 있다.

이 기능을 이용해 특정 문자열을 치환해 보고자 한다.

  1. 상황

PHP 에서 예전에는 오류를 내지 않던 구문이 php 버전이 높아지면서 오류를 내는 구문들이 있다.

ex) $arr[string]

  1. 원하는 작업

작은따옴표 붙이기

$arr[string] ==> $arr['string']

  1. EditPlus 바꾸기 기능

바꾸기 창에서 정규식 체크후에,

찾을말 : [([A-Za-z]+[A-Za-z0-9_]+)]

바꿀말 : ['\1']

  1. 문법설명

[ 로 시작해서 ] 로 끝나는 문자열을 찾는다.

숫자만으로 된것은 찾으면 안되기 때문에, [A-Za-z] 가 1개이상(+) 으로 시작해야 하고,

영문대소 숫자 언드바 로 구성된 문자열을 찾는다.

찾을말에서 괄호 () 안의 문자열이, 바꿀말에서 \1 에 들어간다.

따라서, [string] 이 ['string'] 으로 변환된다.

Linux 디스크 용량 확인하기 - df와 du 명령어 정리

Linux에서 디스크 용량을 확인하는 df와 du 명령어 사용법을 정리한 글이다. df -h로 파티션별 남은 용량, df .로 현재 디렉터리가 포함된 파티션 용량을 확인하고, du -sh로 디렉터리별 사용량을 사람이 읽기 쉬운 단위로 출력하는 방법을 설명한다. 실제 명령 실행 예시도 함께 담고 있다.

Linux 디스크 용량 확인 하기

df : 디스크 남은 용량 확인 (기본 명령어)
df -k : 킬로바이트 단위로 남은 용량 확인
df -m : 메가 바이트 단위로 남은 용량 확인
df -h : 깔끔하게 보여줌
df . : 현재 디렉토리가 포함된 파티션의 남은 용량 확인
du : 현재 디렉토리에서 서브 디렉토리까지 용량 확인
du -a : 현재 디렉토리의 사용량 파일단위로 출력
du -s : 총 사용량
du -h : 깔끔하게 보여줌
**du -sh *** : 한단계 서브 디렉토리 기준으로 보여줌

$ df .
Filesystem     1K-blocks    Used Available Use% Mounted on
/dev/xvda1      10473452 8685140   1788312  83% /
$ df -h
Filesystem      Size  Used Avail Use% Mounted on
devtmpfs        475M     0  475M   0% /dev
tmpfs           492M     0  492M   0% /dev/shm
tmpfs           492M   19M  473M   4% /run
tmpfs           492M     0  492M   0% /sys/fs/cgroup
/dev/xvda1       10G  8.3G  1.8G  83% /
tmpfs            99M     0   99M   0% /run/user/0


Let's create something great together.

프로젝트 문의 및 견적 요청은 언제든 환영합니다.