My SQL 1

다원·2022년 12월 17일
0

DATABASE

목록 보기
11/13

My SQL 설치



: 5.7버전으로 설치가 완료됨

My SQL 설정


새로운 패스워드 설정


remove anonymous users :익명의 사용자 제거
disallow remotely: 원격접속
test database and access: test database 사용 여부
reload privilege : 권한 설정

My SQL 새로운 사용자로 접속


-u root: root 라는 사용자로를 만들어 접속
-p를 통해 패스워드 설정
프롬포트가 mysql로 변경되었음을 확인할 수 있음 > quit 하면 ubuntu로 프롬포트 변경됨

My SQL port 설정


MySQL port: 3306 포트 허용

My SQL 테이블 저장 위치


.auto.cnf: mysql 서버의 UUID 정보 확인
.my.cnf: mysql 서버 설정 정보 (user-specific: 사용자 지정)
.pem 확장자: 키와 관련된 정보

My SQL 사용자


MYSQL 이라는 사용자는 있으나, 사용자의 계정을 사용할 수는 없음(이름뿐인 사용자)

My SQL_plugin 변경

  • plugin: 서버 구성 요소의 생성을 가능하게 함
    서버 시작시 로드하거나 실행할 때 다시 시작하지 않고 로드 및 언 로드 할 수 있음
  • mysql_native_password
  • default_authentication_plugin
    user 테이블에 대한 정보 확인

    root 사용자의 plugin 에 native password로 설정

    root 역시 plugin이 변경된 것을 확인 할 수 있음

Mysqladmin으로 사용자 생성

mysqladmin -u root password 'rootoor' : root라는 사용자를 생성할 수 있음

localhost 로 접속

mysql -u root -p -h localhost
: localhost 로 접속이 가능하게 허용

My SQL 권한 설정

Mysql 접속하여
grant all privileges on . to 'root'@'localhost' identified by 'rootoor';
: 해당 localhost를 사용하여 root 사용자로 접속하는 사용자에 대한 권한 허용
grant all privileges on . to 'root'@'%' identified by 'rootoor';
: 외부에서 root사용자로 접속하는 사용자에 대한 권한 허용

외부 접속을 위한 bind_address


외부 접속을 위한 설정 경로: /etc/mysql/mysql.conf.d/mysqld.cnf
bind address가 본인의 로컬 주소로 되어있음을 확인 할 수 있음
ip 주소로 수정하면 외부에서 접속할 수 있음

패스워드 정책이 맞지 않을 경우


가장 낮은 정도 password의 길이가 8로 지정되어있기 때문에 본인에 맞게 수정을 할 수 있음

외부에서 password 수정 할 경우

mysqladmin -u root password '수정할 패스워드'

My SQL 접속 시


mysql -u [사용자명] -p[설정된 password]
: 패스워드가 -p옵션에 붙어져 있기에 평문장으로 나타남
mysql -u [사용자명] -p : 패스워드를 가릴 수 있음

My SQL 외부에서 접속하기

외부에서 UBUNTU(192.168.100.196) 안의 MYSQL 안에 접속

My SQL 접속하여 비밀번호 설정 서버

  • alter 명령어로 변경
    ALTER user 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '변경 비밀번호';

  • update 명령어로 변경
    update mysql.user
    set authentication_string=PASSWORD('수정할 패스워드')
    where user ='root';

데이터베이스 생성

  • Creat database [database명]

테이블의 속성 확인

테이블 생성


: like (가져올 테이블 구조)테이블 구조만 복사 빈테이블 생성


: 테이블 구조와 테이블의 내용까지 복사 생성


: 일부 테이블의 내용과 구조를 복사

테이블 입력

  • insert into 명령어를 이용한 입력

  • localhost에 별도의 txt파일을 생성하여 입력

테이블 복제

  • creat table 새로 생성될 테이블 명 like 복사할 테이블 명
    :테이블의 형식만 복사해 올 수 있음

  • create table 새로 생성될 테이블 명 select * from 복사할 테이블 명
    : 복사할 테이블의 전체 데이터까지 복제됨
    => select문을 이용해서 일부 데이터만 가져올 수 있음

테이블 삭제

  • DELETE: 테이블만 삭제하여 용량 그대로
    -> 삭제한 내용 복원 가능, 전체 테이터나 일부만 삭제 가능, 속도 느림

    (WHERE 조건이 존재하지 않을 경우 전체를 삭제함)

  • TRUNCATE: 테이블의 초기 상태로 되돌려, 인덱스 등이 삭제되어, 용량이 줄어듬
    -> 복원 불가, 전체 데이터 삭제 두 가지를 사용 할 수 있음

    -> 틀은 보유하고 있음

테이블 항목명 변경


오라클의 경우 ALTER TABLE 하여 열의 이름을 추가할 경우 맨 마지막 열의 이름으로 출력됨
MySQL 의 경우 after 뒤 지정된 항목 명 다음으로 추가된 열이 붙음

profile
공부일지,

0개의 댓글