不灭的焱

革命尚未成功,同志仍须努力

作者:php-note.com  发布于:2016-07-19 13:07  分类:Linux软件安装/优化  编辑

没有mac的root密码,当前用户有sudo权限,所以想以root身份执行的命令都加了sudo。

是否存在 _mysql 用户和用户组,并查看用户 _mysql 是不是用户组 _mysql 的成员。

把解压后的代码移动到 /usr/local/mysql 目录。

#切换到 /usr/local/mysql 目录

cd /usr/local/mysql

#是否存在_mysql用户和用户组,并查看用户_mysql是不是用户组_mysql的成员

$ dscl . -list /Users|grep _mysql
$ dscl . -list /Groups|grep _mysql
$ dsmemberutil checkmembership -U _mysql -G _mysql

# 从官方文档的阐述,安装mysql只需要依赖用户来运行,并不需要登录。所以认为安装时,有一个非登录的用户就可以了

$ sudo chown -R _mysql .
$ sudo chgrp -R _mysql .
$ sudo ./scripts/mysql_install_db --user=_mysql --datadir=/usr/local/mysql/data
$ sudo chown -R root .
$ sudo chown -R _mysql ./data

# 修改配置文件

#开启日志并调整下 
log_bin = mysql-bin
max-binlog-size = 10M
expire_logs_days = 3

#根据输出日志作的添加选项
explicit_defaults_for_timestamp
lower_case_table_names = 2

#根据实际进行修改,最后user=_mysql参数只能由root用户来启动才有效,非root用户可使用sudo 
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
port = 3306
server_id = 1
user = _mysql

#使用脚本管理(start|stop|restart|reload|force-reload|status)mysql 

$ sudo cp support-files/mysql.server mysql
$ sudo vim mysql

#把东东都放到这目录,方便以后删除(运行时没发现生成锁文件) 

basedir=/usr/local/mysql
datadir="$basedir/data" 
lock_file_path="$basedir/mysql_lock" 

#_mysql身份运行要在当前目录写入socket文件,所以给组加写权限

$ sudo chmod g+w . 

#sudo mysql start是错误的,因为它去$path找mysql命令 

$ sudo ./mysql start

#检查是否运行 

$ ps -U _mysql 

#第一次登录空密码,其它的与Linux区别不大了 

$ bin/mysql -h 127.0.0.1 -u root -p

#初始化 MySQL root 密码

 ./bin/mysqladmin -u root password 123456

 

注意:

最后,my.cnf 中的 用户名 及 用户组 配置为当前用户,即  jianbao、staff;

MySql的安装目录的 用户名 及 用户组 也修改为 jianbao、staff;

 

延伸阅读:

Mac Pro 开机自启动 PHP-FPM,Nginx,MySql 等软件