원본출처 : http://www.systemadmin.co.kr/
#
# 글제목 : mysql-3.23 for FreeBSD 4.5 (pgcc compile)
# 작성자 : harrison@systemadmin.co.kr
# 등록일 : 2002. 02. 02
#
MySQL 설치버전mysql-3.23.47 (/usr/ports/databases/mysql323-server) www.mysql.com
pgcc-2.95.2.1 gcc.gnu.org pgcc 패치
FreeBSD 4.5 Release www.kr.freebsd.org
2002. 2. 2
harrison@sv.co.kr
--------------------------------------------------------------------------------
pgcc 설치mysql을 Pentium gcc (pgcc)를 이용해 설치해 보자. pgcc는 펜티엄 프로세서 계열에 최적화된 gcc이다. FreeBSD의 pkg_add 명령으로 pgcc를 설치하거나 직접 컴파일 해도 된다. pgcc는 /usr/local/bin/pgcc 에 설치된다. pgcc로 mysql를 컴파일 했을 때 어느 정도 성능 향상이 있을지는 벤치 테스트 해보지 않아서 모르겠다. 다음 기회에 벤치 테스트 결과를 업데이트 하고 싶다.
pkg_add
# pkg_add -r pgcc
# rehash
# /usr/local/bin/pgcc -v
Reading specs from /usr/local/lib/gcc-lib/i386-portbld-freebsd4.5/pgcc-2.95.2.1/specs
gcc version pgcc-2.95.2.1 20001224 (release)
source compile시스템에는 /usr/bin/gcc 가 내장 되어 있으면 새로 설치될 gcc(pgcc 패치)는 /usr/local/bin/gcc 이다. 새로 설치된 gcc를 pgcc로 파일이름을 변경해 준다.# fetch ftp://ftp.gnu.org/pub/gnu/gcc/gcc-2.95.2.tar.gz
# fetch http://www.goof.com/pcg/data/source/gcc-2.95.2.1-pgcc-2.95.2.1.diff.gz
#
# tar xvzf gcc-2.95.2.tar.gz
# cd gcc-2.95.2
# gunzip < ../gcc-2.95.2.1-pgcc-2.95.2.1.diff.gz | patch -p1 -E
# find . -name \*.rej\ -print
# find . -name \*.orig\ | xargs rm
# .configure
# make
# make install
# mv /usr/local/bin/gcc /usr/local/bin/pgcc
# rehash
# /usr/local/bin/pgcc -v
Reading specs from /usr/local/lib/gcc-lib/i386-unknown-freebsdelf/pgcc-2.95.2.1/specs
gcc version pgcc-2.95.2.1 20001224 (release)
--------------------------------------------------------------------------------
mysql-3.23 설치설치할 때 WITH_CHARSET 옵션을 추가해야 한글 사용에 문제가 없고, BUILD_OPTIMIZED옵션으로 프로세서 플레그를 추가한다.
# cd /usr/ports/databases/mysql323-server
# setenv CC /usr/local/bin/pgcc
# make WITH_CHARSET=euc_kr \
BUILD_STATIC=yes \
BUILD_OPTIMIZED=yes
# make install
# make clean
--------------------------------------------------------------------------------
mysql 처음 사용하기 위한 설정mysql을 설치하고 나서 우선 mysql 데몬을 시작시키고 root 비밀번호를 설정한다.mysql 설치된 곳
/usr/local/bin : mysql 데몬과 유틸리티
/usr/local/share/mysql :
/usr/local/share/doc/mysql : mysql 문서
/usr/local/etc/rc.d/mysql_server.sh: mysql 실행 스크립트
이 파일이 있으면 mysql이 자동 실행된다.
/var/db/mysql : mysql 데이터베이스 파일
mysql 데몬 시작/usr/local/bin/safe_mysqld 를 이용해서 데몬을 시작하거나, 시스템 부트시 자동으로 시작하게 하는 스크립트(/usr/local/etc/rc.d/mysql_server.sh)를 이용하면 된다. mysql 데몬이 시작되면 /tmp에서 소켓파일(/tmp/mysql.sock)을 볼 수 있다.
# /usr/local/bin/safe_mysqld -u mysql &
[3] 2655
Starting mysqld daemon with databases from /var/db/mysql
# ls -alF /tmp/mysql.sock
srwxrwxrwx 1 mysql wheel 0 2/ 2 13:47 /tmp/mysql.sock=
또는
# /usr/local/etc/rc.d/mysql_server.sh start
mysql 데몬 중지하기# /usr/local/etc/rc.d/mysql_server.sh stop
mysql root password 설정mysqladmin 이용# /usr/local/bin/mysqladmin -u root -p password \new-password\
Enter Password: <--- 아직 비밀번호가 없으므로 아무것도 입력하지말고 엔터
# mysql -u root -p <--- u(user), p(password) 옵션으로 접속한다.
Enter password: <--- 루트 비밀번호 입력
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 17 to server version: 3.23.47
Type \help;\ or \h\ for help. Type \c\ to clear the buffer.
mysql>
mysql 서버 접속 후 UPDATE 쿼리 이용
# mysql
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 14 to server version: 3.23.47
Type \help;\ or \h\ for help. Type \c\ to clear the buffer.
mysql> use mysql
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
mysql> SELECT host,user,password FROM user;
+-----------+------+----------+
| host | user | password |
+-----------+------+----------+
| localhost | root | |
| hostname | root | |
| localhost | | |
| hostname | | |
+-----------+------+----------+
4 rows in set (0.02 sec)
mysql> UPDATE user SET password=password(\new-password\) WHERE password=\;
Query OK, 4 rows affected (0.05 sec)
Rows matched: 4 Changed: 4 Warnings: 0
mysql> select host,user,password from user;
+-----------+------+------------------+
| host | user | password |
+-----------+------+------------------+
| localhost | root | 3f47a6a205d48737 |
| hostname | root | 3f47a6a205d48737 |
| localhost | | 3f47a6a205d48737 |
| hostname | | 3f47a6a205d48737 |
+-----------+------+------------------+
4 rows in set (0.01 sec)
mysql> FLUSH PRIVILEGES; <---- 변경내용을 플러쉬한다.
Query OK, 0 rows affected (0.02 sec)
mysql> exit <--- mysql 종료하고 테스트 해보자.
Bye
# mysql <--- 비밀번호가 있으므로 접속거부한다.
ERROR 1045: Access denied for user: \root@localhost\ (Using password: NO)
# mysql -u root -p <--- u(user), p(password) 옵션으로 접속한다.
Enter password: <--- 루트 비밀번호 입력
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 17 to server version: 3.23.47
Type \help;\ or \h\ for help. Type \c\ to clear the buffer.
mysql>
- 끝 -
|