MYSQL

インストール

  • ユーザ作成
[root@localhost ~]# useradd mysql -M -s /sbin/nologin
  • ダウンロード
http://dev.mysql.com/downloads/→MySQL Community Server→Source Code→TAR Archive→No thanks, just take me to the downloads!
icc
Intel純正のC/C++コンパイラで、Intel CPUで最適化が可能。コンパイラが別にいるので今回は使わない。
参考http://blog.miraclelinux.com/thethird/2006/12/mysqlintel_c_co_4007.html

[root@localhost ~]# cd /usr/local/setup/archive
[root@water0 archive]# wget http://dev.mysql.com/get/Downloads/MySQL-5.1/mysql-5.1.46.tar.gz/from/http://ftp.jaist.ac.jp/pub/mysql/
[root@localhost archive]# cd ../make/
[root@water0 make]# tar -zxvf ../archive/mysql-5.1.46.tar.gz
[root@water0 make]# cd mysql-5.1.46
./configure \
--prefix=/usr/local/mysql \
--with-charset=utf8 \
--with-collation=utf8_general_ci \
--with-mysqld-user=mysql \
--with-extra-charsets=all \
--with-client-ldflags=-all-static \
--with-mysqld-ldflags=-all-static \
--enable-assembler \
--enable-local-infile 2>&1 |tee configure_100503.log
  • エラー
checking for termcap functions library... configure: error: No curses/termcap library found
yum install ncurses-devel -y で解決
[root@water0 mysql-5.1.46]# make 2>&1 |tee make_100503.log
[root@water0 mysql-5.1.46]# make install 2>&1 |tee make_install_100503.log
  • 設定ファイル
[root@water0 mysql-5.1.46]# cp /usr/local/mysql/share/mysql/my-medium.cnf /etc/my.cnf
my.cnfのひな形
my-small.cnf 64Mバイト以下のメモリの小規模サーバー向け
my-medium.cnf 32M064Mバイトのメモリを持つMySQL専用サーバーか,128Mバイトのメモリを持つサーバー向け
my-large.cnf 512Mバイト程度のメモリを持ち,MySQL専用となる機械向け
my-huge.cnf 1Gから2Gバイトのメモリを持つMySQL専用サーバー向け
my-innodb-heavy-4G.cnf 4Gバイトのメモリ、InnoDBのみ、ACID、少ない接続、大量のクエリ
  • 起動までの設定
[root@water0 mysql-5.1.46]# cd /usr/local/mysql
[root@water0 mysql]# chown -R mysql:mysql /usr/local/mysql/
[root@water0 mysql]# ./bin/mysql_install_db --user=mysql
[root@water0 mysql]# chown -R mysql:mysql /usr/local/mysql
  • 起動
[root@water0 mysql]# /usr/local/mysql/bin/mysqld_safe --user=mysql &
[1] 17072
[root@water0 mysql]# 100503 16:40:24 mysqld_safe Logging to '/usr/local/mysql/var/water0.dip.jp.err'.
100503 16:40:24 mysqld_safe Starting mysqld daemon with databases from /usr/local/mysql/var
  • 停止
[root@water0 mysql]# /usr/local/mysql/bin/mysqladmin shutdown
100503 16:41:56 mysqld_safe mysqld from pid file /usr/local/mysql/var/water0.dip.jp.pid ended
[1]+  Done                    /usr/local/mysql/bin/mysqld_safe --user=mysql
  • 自動起動
[root@water0 mysql]# cp /usr/local/mysql/share/mysql/mysql.server /etc/init.d/mysqld
[root@water0 mysql]# cp /usr/local/mysql/share/mysql/mysql.server /etc/init.d/mysqld
[root@water0 mysql]# chkconfig --add mysqld
[root@water0 mysql]# chkconfig mysqld on
[root@water0 mysql]# /etc/init.d/mysqld start
  • 初期パスワード設定(シェルスクリプト)
[root@water0 mysql]# /usr/local/mysql/bin/mysql_secure_installation
Enter current password for root (enter for none):
Set root password? [Y/n] Y
Remove anonymous users? [Y/n] Y
Disallow root login remotely? [Y/n] Y
Remove test database and access to it? [Y/n] Y
Reload privilege tables now? [Y/n] Y
  • エラー
/usr/local/mysql/bin/mysql_secure_installation: line 43: mysql: command not found
※PATHが通ってないので/etc/profileに追加(次回起動時に読み込む
export PATH=$PATH:/usr/local/mysql/bin  ←  一時的な設定
  • エラー
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
※MYSQLが起動していない。
  • RCS
[root@water0 ~]# cd /etc/
[root@water0 etc]# mkdir RCS
[root@water0 etc]# ci my.cnf
[root@water0 etc]# co -u -l my.cnf

make installしたファイルを削除したい。

make uninstall
find / -name mysql
rm -rf /usr/local/lib/mysql /usr/local/include/mysql
  • もし、uninstallがなかった場合..
cat Makefile |less
prefix,exec_prefix,bindir,sbindir,mandirなどを見る。
makeに付加させるパラメータ「install:」
「mkdir -f -p -m 755 $(bindir) $(mandir)/man1 $(nmapdatadir) $(deskdir)」でディレクトリ作成
「$(INSTALL)」が行頭に書かれている行が,コピーされるファイルすべての指定
最終更新:2010年05月03日 16:07
ツールボックス

下から選んでください:

新しいページを作成する
ヘルプ / FAQ もご覧ください。