[MySQL] 설치 및 접속 명령어 확인하기

버버니야·2022년 3월 16일
0
$ [mysql경로] --default-character-set=utf8 -uroot -p -A -S  [소켓 경로]

-uroot: 사용자를 루트 계정으로 접속하는 옵션
-S : mysql 의 소켓의 경로를 직접 지정하는 옵션 뒤에 소켓이 있는 경로를 적어야함
-p : 비밀번호를 사용해 접속하는 옵션
-A : (--no-auto-rehash) 자동 재해싱을 비활성화함.

자동 재해싱이란 테이블 및 컬럼 이름 완료를 활성화 시킨다.
테이블 및 컬럼이름 완료를 사용하고자 할 경우에는 rehash 명령어를 입력해야함

sed -i "s/^basedir=/basedir=${base_dir//\//\\/}\/mysql/g" mysql.server
sed -i "s/^datadir=/datadir=${base_dir//\//\\/}\/mysql\/data/g" mysql.server

sed : streamlined editor의 약자, vi 와 비슷한 역할을 하나 명령어를 사용할 때 파라미터 값으로 작업.

-i 옵션을 통해 파일 내용을 수정할 수 있다.
mysql.server 파일에 위의 base 디렉토리의 경로를 저장했다.

sed (Stream Editor)

참고블로그 <- sed 명령어 참고 블로그

sed의 옵션
-e : 편집 커맨드 설정하기
-f : 편집 커맨드를 기술한 파일을 지정
-i : 파일 내용 변경
-n : 커맨드 결과 표시하지 않기

정규식

  • [] : 한 문자 매치
  • ^ : 라인 맨 앞
  • $ : 라인의 끝
  • & : 검색 문자열 치환
  • \< : 단어의 시작
  • > : 단어의 끝
  • x[m,n] : m, n 구간 반복

연산자

  • [범위]]/p : 지정 범위 출력
  • [범위]/d : 지정 범위 삭제
  • [범위]/문자1/문자2 : 지정된 범위의 처음 나타난 문자1을 문자2로
  • s/문자1/문자2 : 문자 1을 문자 2로
  • g : 모든 라인에 적용

s/aa/bb/g는 파일 내의 모든 문자 치환 하기
일치하는 문자를 대체하는데 사용한다.
모든 라인에서 aa와 일치하는 문자를 찾아서 bb로 대체하는 명령어

sed -i "s/^basedir=/basedir=${base_dir//\//\\/}\/mysql/g" mysql.server

이 명령은 mysql.server 파일에서 basedir=을 찾아서 ${base_dir//\//\\/}\/mysql로 바꾸는 것이다
하지만 이 명령이 쉘 스크립트에서 사용하 것이기 때문에 $뒤에는 앞에서 정의한 변수로 바뀌어 저장된다.

profile
안녕하세요

0개의 댓글