Macportsからのインストール
インストール
[Macportsからインストール]
$ sudo port install mysql56-server
[初期セットアップ]
$ sudo -u _mysql /opt/local/lib/mysql56/bin/mysql_install_db
なにやらエラーが出ていたのでディレクトリ作成
$ sudo mkdir /etc/mysql56 $ sudo chown mysql:_mysql /etc/mysql56 $ sudo -u _mysql cp -pi /opt/local/share/mysql56/support-files/my-default.cnf $basedir/etc/mysql56/my.cnf
[サービス自動起動設定]
Xcodeがザワついているが、とりあえず起動した。
$ sudo port load mysql56-server Error: Error: No Xcode installation was found. Error: Please install Xcode and/or run xcode-select to specify its location. Error: Warning: xcodebuild exists but failed to execute $ ps -ef |grep mysql 0 19092 1 0 7:29AM ?? 0:00.01 /opt/local/bin/daemondo --label=mysql56-server --start-cmd /opt/local/lib/mysql56/bin/mysqld --user=_mysql ; --pid=exec 74 19093 19092 0 7:29AM ?? 0:00.40 /opt/local/lib/mysql56/bin/mysqld --user=_mysql 501 19098 408 0 7:29AM ttys002 0:00.00 grep mysql
が、パスワード設定できず
$ sudo /opt/local/lib/mysql56/bin/mysqladmin -u root password 'hogehoge' # 失敗した.. /opt/local/lib/mysql56/bin/mysqladmin: connect to server at 'localhost' failed error: 'Access denied for user 'root'@'localhost' (using password: NO)' $ /opt/local/lib/mysql56/bin/mysql -u root -p # ログインできない... Enter password: ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
[パスワード設定]
mysqld_safeで起動しようとしたがスクリプトエラー
$ cd /opt/local ; sudo -u _mysql /opt/local/lib/mysql56/bin/mysqld_safe --skip-grant-tables & [1] 19267 $ 131104 07:46:55 mysqld_safe Logging to '/opt/local/var/db/mysql56/air.local.err'. /opt/local/lib/mysql56/bin/mysqld_safe: line 726: syntax error near unexpected token `then' /opt/local/lib/mysql56/bin/mysqld_safe: line 726: ` then # The pid contains a mysqld process'
該当部分を適当にコメントアウトして進めた
$ sudo vi /opt/local/lib/mysql56/bin/mysqld_safe
再度、mysqld_safeを起動して権限付与
$ cd /opt/local ; sudo -u _mysql /opt/local/lib/mysql56/bin/mysqld_safe --skip-grant-tables & mysql> truncate table user; Query OK, 0 rows affected (0.01 sec) mysql> flush privileges; Query OK, 0 rows affected (0.00 sec) mysql> grant all privileges on *.* to root@localhost identified by 'hogehoge' with grant option; Query OK, 0 rows affected (0.01 sec) mysql> flush privileges; Query OK, 0 rows affected (0.00 sec) mysql> select host, user from user; +-----------+------+ | host | user | +-----------+------+ | localhost | root | +-----------+------+ 1 row in set (0.00 sec) mysql> quit;
[MySQL再起動]
$ sudo pkill mysql $ sudo port load mysql56-server $ ps -ef | grep mysq[l] 0 19725 1 0 7:56AM ?? 0:00.01 /opt/local/bin/daemondo --label=mysql56-server --start-cmd /opt/local/lib/mysql56/bin/mysqld --user=_mysql ; --pid=exec 74 19726 19725 0 7:56AM ?? 0:00.43 /opt/local/lib/mysql56/bin/mysqld --user=_mysql
[MySQLに接続]
$ /opt/local/lib/mysql56/bin/mysql -u root -p
その他設定
[skip-networking"のエントリーをコメント化]
$ sudo vi /opt/local/etc/mysql56/macports-default.cnf
[PATH設定]
$ echo 'export PATH=/opt/local/share/mysql56/support-files:/opt/local/lib/mysql56/bin:$PATH' >~/.bash_profile $ . ~/.bash_profile