목록웹개발/Database (54)
써먹는 웹개발
원인 : DB를 외부에서 접속시 나는 에러 보안상 root 계정에 아무나 접근 할 수 없기 대문에 허용할 IP를 지정해줘야한다. 모든 IP 허용 1 GRANT ALL PRIVILEGES ON *.* TO '아이디'@'%' IDENTIFIED BY '패스워드'; cs 출처 : https://java119.tistory.com/61
- 주의사항 : 리눅스에서 MariaDB 로그인 안하고 바로 해야 에러나지 않습니다. 1. 테이블 및 데이터 백업 명령어 1 mysqldump -u root 데이터베이스명 > 백업sql파일명.sql cs ※ 트리거 포함 2. function(routines)까지 백업 명령어 1 mysqldump --routines -u root 데이터베이스명 > 백업sql파일명.sql cs
mariadb > function case 예시입니다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 create definer = admin@`%` function FUN_NAME(i_PARAMETER_NAME varchar(1)) returns varchar(30) begin DECLARE _RETURN_NAME VARCHAR(30) character set utf8 default null; SET _RETURN_NAME = case when i_PARAMETER_NAME = 'M' then '남자' when i_PARAMETER_NAME = 'W' then '여자' else '기타' end; RETURN _RETURN_NAME; END; Colored by Color Scripter cs
SELECT 컬럼명 FROM 테이블명 WHERE 컬럼명 NOT IN( SELECT LEFT(컬럼명,n) AS 컬럼명 FROM 테이블명 WHERE 컬럼명 LIKE '%-R') ※ 문자열이 n글자이기 때문에 맞게 수정하면 됩니다.
SELECT * FROM 테이블명 LIMIT 1;
1. federated를 사용하는 이유 : 다른 서버간의 데이터 조합이 필요한 경우 ex) 다른 서버간의 join 2. 방법 0) 2가지 DB ORIGIN_DB : 원본 데이터가 있는 DB NEW_DB : 원본 데이터가 필요한 DB 1) NEW_DB에 root 접속 후에 SHOW ENGINES; 명령어로 FEDERATED가 있는지 확인한다. - 있으면 3번으로 - 없으면 설치 (명령어 : install plugin federated soname 'ha_federated.so') 2) 설치했다면 mariadb 재시작 후, 다시 show engines로 확인 - Support 컬럼이 'YES'로 바뀌었는지 확인 3. 사용법 CREATE TABLE `db_test1` ( `a1` varchar(10) DEFA..
※ DB 설치한 OS는 linux입니다. 원인 : DB 외부 접근하면 ip를 호스트네임으로 변경하는 속성이 있어서 바꾸는 사이에 불필요한 부하가 발생한다. 해결방법 : 접근할때마다 skip하는 설정을 추가하니까 해결됨 설정방법 1. mariadb shutdown - 명령어 : systemctl stop mariadb 2. mariadb 설정 - my.ini 열기 [mysqld] skip-external-locking skip-host-cache skip-name-resolve 3. mariadb start - 명령어 : systemctl start mariadb ※ 참고 : https://velog.io/@obzect/mariaDB-%EC%84%A4%EC%B9%98%EC%8B%9C-%EC%99%B8%EB..
Mysql 또는 MariaDB에서 insert문은 그대로 두고 뒤에 update 추가하는 방법입니다. 1. 기존 소스 INSERT INTO `테이블명` (`컬럼A`, `컬럼B`) VALUES(1, 2); 2. 수정한 소스 INSERT INTO `테이블명` (`컬럼A`, `컬럼B`) VALUES (1, 2) ON DUPLICATE KEY UPDATE 컬럼A = 컬럼A * 10, 컬럼B = 컬럼B * 100; 데이터가 없으면 1,2로 데이터가 있으면 A값에는 *10, B값에는 *100 처리