새로 mysql을 깔고 디비 덤프를 임포트 해서 쓰려고 보니 권한때문에 접근이 안된다.새로 아이디와 패스워드도 바꿔줬는데..하두 안되서 일단 mysql서비스를 재구동하고 다시 테스트계정을 생성하고 패스워드 변경하고 권한을 주고나니 다시 되었다. 패스워드 변경시에 아래처럼 적용했더니 바로 접근이 가능해졌다. CREATE USER test@localhost IDENTIFIED BY 'test'; GRANT ALL PRIVILEGES ON newdatabase.* TO test@localhost; SHOW GRANTS FOR test@localhost; update user set password=password('testpassword') where user='test'; flush privileges;
Mysql 권한 관리 1. root 패스워드 설정 # mysqladmin -u root -p password new-password 2. 사용자 만들기 mysql> CREATE USER test@localhost IDENTIFIED BY ‘test’; Query OK, 0 rows affected (0.00 sec) UPDATE `mysql`.`user` SET `Password`='testpassword' WHERE `Host`='localhost' AND `User`='test'; 또는 update user set password=password('testpassword') where user='test'; flush privileges; 라고 적어서 패스워드를 변경해준다. 3. 사용자에게 부여할 D..
-- MySQL 덤프 $ mysqldump DB 테이블 -u계정 -p -q -d --default-character-set=euckr > 저장파일 위치/파일명 mysqldump 옵션 -A, --all-database : 모든 DB를 덤프 --add-locks : 덤프 전에 lock 덤프 후에 unlock --add-drop-table : 덤프 이후에 출력물의 앞에 drop table 명령 추가(복구할 때 사용) --skip-extended-insert : 데이터셋 하나당 insert문 하나로 -B, --database : 여러 DB를 통시에 덤프 할 때 사용 -f, --force : 에러무시 -h, --host : 지정한 호스트의 데이터를 덤프 -t : data만 덤프 -d : 데이터를 제외한 스키마만 ..
1. http://dev.mysql.com/downloads/mysql/ 다운로드MySQL Community Server 에서 다운로드를 진행한다.(msi버전은 그냥 다음 클릭만 하면 될듯.) 해당 페이지의 아래 그림(MySQL Installer 5.6 for Windows)을 클릭하면 msi 버전의 다운로드 화면이 뜨고 zip을 다운받아 설치하려면 아래 주황색 박스의 download를 클릭하면 된다. 그러면 로그인 화면이 뜨는데 난 그냥 로그인 없이 다운받는걸로..No thanks 클릭해주었다. 다운로드 받은 것을 압축해제한 뒤에 환경 변수를 셋팅해주면 된다.환경변수는 자신의 스타일로 하면 될듯..내컴퓨터-우클릭-시스템속성-고급속성 들어가서 위에서 환경변수를 누르고 새로만들기를 누른뒤 아래와 같이 MY..
요즘 개발하면서 별도의 유지보수 문서가 존재하지 않아서 직접 테이블 정보를 같이 정리하고 있는데, 하다보니 unsigned라는 선언이 눈에 띄었다. CREATE TABLE `Code` ( `id` INT(11) UNSIGNED NOT NULL AUTO_INCREMENT, ... ... ) 그래서 저게 몰까 하고 검색해보니, 컬럼을 생성할때 활용도에 따라 범위를 다르게 주는 부분이다. id 같은 경우 솔직히 음수는 쓰지 않으므로 int의 범위에서 반은 쓰질 않는다. 이럴때 unsigned를 선언해 주면 그 범위가 양수로 옮겨진다. -2147483648 ~2147483647 에서 0 ~ 4294967295 로 옮겨가는 것이다. [참고] http://stackoverflow.com/questions/38956..
개발을 하다보면 가끔 데이터를 내마음대로 성형(?)해서 써야할 때가 있다. 그중 하나가 substring인데, 특정 인덱스나 문자를 기준으로 잘라주는 역할을 한다. MySql에는 대표적으로 Substring과 Substring_index를 쓰는것 같다. [방법 1] substring_index 사용시 예) substring_index( 대상문자, 구분자, 인덱스)select code, substring_index(code, '-', 2), substring_index(code, '-', 3), substring_index( code, '-', -2), substring_index( code, '-', -3) from Product; 인덱스 값을 마이너스로 줬을때는 아래에 있는 substring_index..
짝꿍이랑 개발서버를 가상서버에 두기로 하고 Mysql을 쓰기로 했는데,클라이언트만 깔아서 디비를 이용하기 위해서 전에 HeidiSQL을 썼던 기억에이번엔 직접 깔아보자 하고 시도해봤다.(그땐 짝꿍이 설치파일로 직접 깔아줬었다) 사이트에 접속해서 다운로드 받고 설치만하면 된다.매우 간단하다. 1. 사이트에서 다운로드하기우선 HeidiSQL사이트에 찾아들어간다. (http://www.heidisql.com) 상단의 downloads탭을 누르면 가장 최근 빌드를 다운받거나 특정 버전의 빌드를 다운받을 수가 있다. 2. 다운받은 설치파일 실행하기솔직히 별게 없어서 그냥 다음만 주구장창 눌러주면 알아서 설치가 진행된다. 설치가 완료되고 실행시키면 아래처럼 세션관리자 화면이 뜨는데 왼쪽 아래 신규를 클릭해서 만들어..
1. 테이블명을 변경할 때 --- name이라는 테이블을 customer 라는 이름으로 변경 sp_rename 'name', 'customer' 2.컬럼명을 변경할 때 --- reserve테이블의 name이라는 컬럼을 customer라는 이름으로 변경 sp_rename 'reserve.[name]', 'customer', 'COLUMN' --- (실제 예) --- 테이블명 : tech_relay_base_ob_van, 변경전컬럼 : firstApproverId, 변경후컬럼 : approverId sp_rename 'tech_relay_base_ob_van.[firstApproverId]', 'approverId', 'COLUMN' 3.컬럼의 타입을 변경할 때 ALTER TABLE NewOrders ALT..
특정 테이블에 해당 컬럼에 대한 constraint가 존재하면 삭제후에 해당 컬럼을 삭제하도록 한다. IF EXISTS (SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME='TB_GEOFENCE_SS' AND COLUMN_NAME='EMAIL_ALERT') BEGIN DECLARE @sysname sysname DECLARE @sql varchar(1000) SET @sysname = (select name from sysobjects where parent_obj in (select id from sysobjects where name='tb_geofence_ss') and name like '%email%') set @sql = 'ALTER TAB..
매번 실서버에 디비의 변경된 스키마가 적용됐는지 확인하려면 컬럼을 존재하는지 일일히 select날려 체크하고 있으면 냅두고 없으면 alter해주곤했었다. 근데 if not exists를 이용하면 더 간단히 할 수 있다는걸 알았다. [이전에 내가 사용했던 방식] SELECT TOP 1 GPS_ACCURACY FROM TB_TRACKER; ALTER TABLE TB_TRACKER ADD GPS_ACCURACY INT NOT NULL CONSTRAINT DF_TB_TRACKER_GPS_ACCURACY DEFAULT (0); [if not exists 사용] -- 1. 컬럼 IF NOT EXISTS (SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME='TB_..
출처 : http://blog.naver.com/gaeean/60050661562 Create Table With All Data Types In MySQL|작성자 레인보우 import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; public class CreateTableWithAllDataTypesInMySQL { public static Connection getConnection() throws Exception { String driver = "org.gjt.mm.mysql.Driver"; String url = "jdbc:mysql://localhost/databaseName"; St..
출처 : 책 SQL 400% 활용중에서 (209p) 참고 : http://www.notecopy.com/bbs/board.php?bo_table=mysql_study&wr_id=9 -- [기본 문법] CREATE [UNIQUE]-- 고유 인덱스 옵션 [CLUSTERED | NONCLUSTERED] INDEX idx_name-- 클러스터 옵션 ON table_name : vu_name (col_name [ASC|DESC],...)-- 정렬 옵션 [ WITH { [PAD_INDEX]-- 여유 공간 옵션 [,FILLFACTOR = n] |-- 페이지 채움 비율 [,IGNORE_DUP_KEY] |-- 중복키 무시 옵션 [,DROP_EXISTING] |-- 기존 인덱스 삭제 옵션 [,STATISTICS_NOREC..
Default값을 변경하려고 보니 constraint때문에 변경이 안되고 에러 메세지만 뿌려준다. 그래서 어차피 이제 막 추가했던 컬럼이니 드랍이나 하자 했는데.. 이역시 쉽게 되질 않아 방법을 찾아보게 되었다. [출처 : http://www.cyworld.com/candyshop52/2855015] 출처의 필자에 의하면 constraint만 삭제했다가, alter나 drop후에 다시 생성해주라는건데.. constraint를 삭제해도 alter가 잘 이루어지지 않았다.. 결국 그냥 constraint와 컬럼 모두 드랍하는것으로 결정! ALTER TABLE TB_GEOFENCE_ALERT DROP CONSTRAINT DF_TB_GEOFENCE_ALERT_LAST_IN_OUT_STATUS; ALTER TAB..
출처 : http://blog.naver.com/stopi?Redirect=Log&logNo=70010518534 DATEDIFF Returns the number of date and time boundaries crossed between two specified dates. Syntax DATEDIFF ( datepart , startdate , enddate ) Arguments datepart Is the parameter that specifies on which part of the date to calculate the difference. The table lists dateparts and abbreviations recognized by Microsoft® SQL Server™...
며칠전에 YYYYMMDDhhmmss형태의 날짜 스트링을 데이트타입으로 변환하는동안에 데이터가 얼마 없을때는 무리없이 잘 돌던게.. 쿼리 대상 데이터가 많아지자 아래와 같은 에러메세지를 가뿐히 보여주며 문제가 생겼댄다. Msg 242, Level 16, State 3, Line 1 The conversion of a char data type to a datetime data type resulted in an out-of-range datetime value. 어우.. 머가 문젤까.. 진짜 고민 많이 했다. getDate()를 문자로 convert하고 다시 datetime으로 변환하면 잘 되드만.. 여기저기 검색해본 결과 아래와 같은 mssql server helper라는 사이트를 찾았다. 이유인 즉슨...
출처 : 남군. -------------------------------------------------------------------------------------------- 1. mssql 에서 convert를 이용하여 20080420080000(YYYYMMDDHHMISS)의 날짜 스트링을 datetime 형식으로 변환하기 select convert(datetime,'20080420 08:00:00') => 20080420 08:00:00 형식은 convert 함수에서 문자를 날짜로 자동으로 변환해 준다. => 따라서 20080420080000 => 20080420 08:00:00 형식으로 변경하면 된다. select substring('20080420080000',1,8) + ' ' + sub..
특정 컬럼의 문자들을 부분적으로 변경하고 싶을때.. 자바처럼 replace같은게 없을까 하고 검색해봤더니.. 오라클도, mssql도 다 replace함수를 쓰고 있었다. 방식은 간단 replace( '대상문자열', '원래문자', '바껴질문자') 예를 들어.. icon_nm 라는 컬럼에 'sXCar.ico' 이런식으로 들어가있는데 아래처럼 Car.ico만 personM.ico로 변경하고 나머지는 그대로 놔두고 싶을때 쓰는 함수다. select replace( icon_nm, 'Car.ico', 'personM.ico'), * from tb_history where tracker_id = '900049' or tracker_id = '900050' and icon_nm not like '%person%' o..
신규로 생성한 테이블이 원래 있던 테이블과 거의 동일한데, 일일히 데이터를 넣기가 귀찮고, 바보처럼 엑셀로 쿼리 만들기는 무리고,, 이럴때 사용하기 좋은 INSERT INTO SELECT문.. SQL문의 세계는 역시 놀라워.. 이런게 있을줄이야.. insert into TB_GEOFENCE_ALERT( TRACKER_ID ,FENCE_ID ,FENCE_NM ,LAT_NO ,DIR_NS ,LON_NO ,DIR_EW ,LOCATION_GE ,RADIUS_NO ,ACT_YN ,CUSER_ID) select TRACKER_ID ,FENCE_ID ,FENCE_NM ,LAT_NO ,DIR_NS ,LON_NO ,DIR_EW ,LOCATION_GE ,RADIUS_NO ,ACT_YN ,CUSER_ID from TB_GE..
- Total
- Today
- Yesterday
- MySQL
- 페밀리세일
- 팸세일
- 라고스
- 기부사기
- VirtureBox
- 마라탕 #마라상궈 #마라탕재료 #쉽게만드는마라탕 #중딩입맛 #마라탕잡탕
- 인도
- eclipse
- 와코마리아
- 해외직구
- 6월 패밀리세일
- java
- 새희망씨앗
- 리터너블
- 나이지리아
- 새희망씨앗 피해자
- 와코마리아팸세일
- 사업자등록
- javascript
- 부드러운맛
- 기부피해
- 한남동세일
- 와코마리아한남동
- 와코마리아 스웨터
- 단체소송
- 홈택스
- 안드로이드
- UML
- 패밀리세일
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |