데이터베이터 구축을 위한 프로그램
$ sudo apt-get install mysql-server
tasksel을 이용하여 lamp를 설치하여도 된다.
MySQL 설정파일 : /etc/mysql/my.cnf
MySQL 콘솔을 실행하려면 아래 명령을 이용한다.
$ mysql
root 권한으로 실행하려면 아래와 같이 실행한다.
$ mysql -u root -p
다음 명령은 mysql 접속 후 test라는 데이터베이스를 생성한다.
$ mysql -uroot -p // 이후 비밀번호 입력 mysql> create database test;
mysql에 접속하지 않고 커맨드라인에서 바로 데이터베이스를 생성할 수도 있다.
$ mysql -uroot -p -Bse 'create database test'
다음 명령은 test-20141027.sql 파일을 test 데이터베이스로 import 한다.
$ mysql -uroot -p -h localhost test < test-20141027.sql
test라는 데이터베이스가 없으면 에러가 나므로 주의한다. -h localhost
는 로컬의 MySQL에 접속한다는 의미로 생략하여도 된다. 만약 외부의 MySQL 서버에서 import하려면 localhost 대신 해당 서버의 도메인 네임 또는 ip를 입력한다.
웹페이지에서 MySQL을 관리하기 위한 프로그램이다. 설치는 아래와 같이 한다.
$ sudo apt-get install libapache2-mod-auth-mysql php5-mysql phpmyadmin
MySQL은 기본적으로 외부 접속을 허용하지 않는다. 외부 접속이 가능하기 위해서는 아래와 같이 설정 파일을 수정해야 한다.
$ sudo vim /etc/mysql/my.cnf
아래의 bind-address 부분을 주석처리 한다.
# Instead of skip-networking the default is now to listen only on # localhost which is more compatible and is not less secure. bind-address = 127.0.0.1
설정을 반영하기 위해 mysql 서버를 재시작한다.
$ sudo /etc/init.d/mysql restart
MySQL을 시작하려 했더니 시작이 안되고 /var/log/mysql 폴더의 로그를 확인하니 위 메시지가 나타난 경우 다음 작업 수행.
다음 명령으로 mysql 프로세스 번호 확인 (예: 2704)
$ lsof -i TCP:3306
위에서 알아낸 pid 번호로 /var/lib/mysql/{honemame}.pid 파일을 생성
$ echo 2704 > /var/lib/mysql/myhost.pid
owner 를 mysql 계정으로 변경
$ chown mysql:mysql /var/lib/mysql/myhost.pid
그 후 mysql 서비스를 재시작하여 본다. 그래도 시작되지 않으면 다음 명령으로 모든 mysql 데몬을 중지 후 재시작해본다.
$ killall mysqld
다음 명령으로 프로세스를 중지할 수도 있다.
$ kill -9 <pid>