MySQL
mariaDB
MySQL vs mariaDBが続いているけれど、ぶっちゃけ中身はほぼ同じなのでどっちでも良い。
一応、mariaDBの方が高機能らしいが殆ど変わらないと思う。
MySQL5.5から./configureではなく、cmakeを使うようになった。
1. ビルド
//MySQL 5.1系統 # tar zxvf mysql-5.1.73.tar.gz # cd mysql-5.1.73 # ./configure --prefix=/usr/local/mysql --without-readline # make # make install //MySQL 5.5系統 # tar zxvf mysql-5.6.15.tar.gz # cd mysql-5.6.15 # cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci # make # make install
cmakeのオプションはMySQLのオフィシャルに書いてある
2. MySQLの設定・起動準備
x86_64のOSを使っているのなら、下を必ず行う事!!
PHPとかのconfigure時に"--with-libdir=lib64"を指定すると、lib64を見に行ってしまって転ける
# ln -s /usr/local/mysql/lib /usr/local/mysql/lib64
MySQL用のユーザを作成する。
# groupadd mysql # useradd -g mysql -d /var/mysql -s /sbin/nologin mysql # rm -rf /var/mysql/* # rm -rf /var/mysql/*.*
起動スクリプトの設置を行う。コピーしたスクリプトの中身も書き換える。
# {MySQLのソースコード}/support-files/mysql.server /etc/init.d/mysqld # chmod 755 /etc/init.d/mysqld # chkconfig --add mysqld # chkconfig mysqld on
MySQLのデータベースを初期化する。
# /usr/local/mysql/scripts/mysql_install_db --basedir=/usr/local/mysql --user=mysql --ldata=/var/mysql
3. MySQLの起動後設定
起動した後に、データベース内のゴミを削除する。
# /etc/init.d/mysqld start # mysqladmin -u root password {MySQLのrootユーザパスワード} # mysql -u root -p Enter password: {MySQLのrootユーザパスワード} > use mysql; > delete from user where user=''; > delete from user where password=''; > drop database test; > flush privileges; > exit
4. MySQLのユーザ・パスワード・データベース登録
(例) ユーザ:hoge , パスワード:pass , データベース名:bar
# mysql -u root -p Enter password: {MySQLのrootユーザパスワード} > create database bar; > grant all on bar.* to hoge identified by 'pass'; > flush privileges; > exit