前言: 前面的Mac OS X Leopard: 配置Apache, PHP, SQLite, MySQL, and phpMyAdmin(一)中主要介绍了Leopard内置的Apache和PHP的设置, 这里要介绍的是MySQL和phpMyAdmin的安装配置了, 因为这些不是Leopard内置的软件(Leopard Server内置了MySQL), 所以会出现一些问题, 我会在这里给出主要会碰到的问题的解决方法.
三. MySQL
如果你运行的是OS X Leopard Server那么系统已经内置默认安装了MySQL, 否则在OS X Leopard Client上你需要自己安装MySQL. 你可以参考MySQL的官方安装说明. 但是后面我解决问题的方案是在该说明中找不到的。
1. 下载得到程序包 : 目前的版本是5.1, 它的下载网址是: MySQl 5.1, 到Mac OS X项目下,目前它包括,OS X 10.4(PPC, x86), OS X 10.5(PPC, x86)公7个版本,找适合自己的版本,我选择Mac OS X 10.5(x86), 文件名是mysql-5.1.30-osx10.5-x86.dmg. 这个包的大小是60MB多, 解压安装需要230MB左右的空间。
2. 安装程序包 : 下载后的dmg文件里面包括两个安装包, 一个是MySQL的程序包(mysql-version-osx10.5-x86.pkg), 一个是开机自动运行MySQL的包(MySQLStartupItem.pkg). 首先安装程序包, 它的安装路径是: /usr/local/mysql-VERSION, 并且在/usr/local/mysql目录生成一个符号连接(symbolic link), 如果该目录已经存在,那么它首先把原目录移动到/usr/local/mysql.bak.
MySQL的安装需要系统里面有一个叫mysql用户, 这个用户是OS X的系统默认用户之一,在Leopard里面的用户名是_mysql. 如果任何原因丢失这个用户, 那么请自己生成这个用户.
3. 再安装开机自动运行包.
安装完后, 可以看到这样的文件:
下面我们粗略分析一下这个StartupItem.pkg都做了什么,我们可以看看它的postinstall脚本文件就可以了.
首先它先把原来的hostconfig文件中的可能存在的MYSQL的设置删除,
sed-es/^MYSQL=-YES-/MYSQL=-NO-/g</etc/hostconfig>/temp/hostconfig
然后添加MYSQLCOM=-YES-到临时文件/temp/hostconfig中
echo "MYSQLCOM=-YES-">>/temp/hostconfig
最后移动那个临时文件到/etc/中, 并修改文件的属性:
mv-f/temp/hostconfig/etc/hostconfig
chmod644/etc/hostconfig
4. 其实还有一个System Preference的插件 , 在说明中没有提及, 如果你愿意也可以安装:
该文件是MySQl.prePane, 只要把它拖放在/Library/PreferencePanes目录下就可以了,打开System Preferences就可以看见了.
5. 环境设置:
这个步骤可选, 是为了方便以后的shell操作管理. 在你喜欢的shell里面添加下面的别名, 我的是bash,所以编辑/etc/bashrc文件,添加下面两行:
aliasmysql'/usr/local/mysql/bin/mysql'
aliasmysqladmin'/usr/local/mysql/bin/mysqladmin'
6. 配置MySQL:
安装之后最主要的工作就是配置工作了, MySQL的配置, 主要是安全设置. 安全相关的参考官方文档可以参见:
2.10.3. Securing the Initial MySQL Accounts
A. 设置MySQL系统数据库的root密码 :
因为MySQL中默认的root密码为空, 所以一定要重设为自己的密码, 这个要记住, 如果忘了, 可以参考MySQL的官方文档:Section B.1.4.1, “How to Reset the Root Password" 或者参考另外一个文章: MySQL: Reset Lost Root Password
可以使用下面的命令来设置root密码:
mysqladmin-urootpassword"mysqlpassword"
其中"mysqlpassword" 就是密码.
或者是交互式的:
然后设置密码:
mysql>SETPASSWORDFOR'root'@'localhost'=PASSWORD('newpwd');
mysql>SETPASSWORDFOR'root'@'host_name'=PASSWORD('newpwd');
mysql>SETPASSWORDFOR'root'@'127.0.0.1'=PASSWORD('newpwd');
其中的host_name是mysql server的主机名, newpwd是你的新密码.
或者使用UPDATE来设置密码:
mysql>UPDATEmysql.userSETPassword=PASSWORD('newpwd')WHEREUser='root';
mysql>FLUSHPRIVILEGES;
B. 注意1:
如果是第一次设定密码,那么使用命令:
shell> mysql -u root
如果想重设密码,那么要加上-p选项, 并在它询问密码的时候输入当前的密码:
shell> mysql -u root -p
对于mysqladmin命令同样适用.
C. Anonymous帐号:
安装之后, 系统还会建立Anonymous帐号, 你可以给它设置密码也可以删除该帐号:
shell>mysql-uroot
mysql>SETPASSWORDFOR''@'localhost'=PASSWORD('newpwd');
mysql>SETPASSWORDFOR''@'host_name'=PASSWORD('newpwd');
删除命令:
而下面命令删除默认与root有相同权限的Anonymous用户:
mysql>DROPUSER''@'localhost';
D. 检查用户情况:
mysql>SELECTHost,UserFROMmysql.user;
更详细的安装后的操作可以参看MySQL的官方文档: 2.10.2. Unix Post-Installation Procedures
E. MySQL的启动:
目前来说我知道的有三种方法:
a. 如果你安装了StartupIntems的部分 ,那么可以使用下面的命令:
shell>sudo/Library/StartupItems/MySQLCOM/MySQLCOMstart
b. 官方的Unix通用的命令 :
shell>cd/usr/local/mysql
shell>sudo./bin/mysqld_safe
如果系统要求,请输入密码,然后按 Control-Z, 再输入下面的命令后, 退出Terminal就可以了。
c. GUI方式 :
进入System Prefeences的MySQL里面有个启动/停止MySQL的按钮。
7. 问题解决:
a. MySQLCOMstart无法启动MySQl的问题:
如果在hostconfig文件中MYSQLCOM被设置为=-NO-, 那么请使用下面的命令
sudo/Library/StartupItems/MySQLCOM/MySQLCOMrestart
b. 如果出现:Checking the log files, I found that there were incorrect permissions on some of the files. The following steps (from the INSTALL_BINARY readme) fixed the problem. 的错误提示:
请检查data目录的权限, 并修改:
%cd/usr/local/mysql
%sudochown-R_mysqldata
c. GUI方式无法启动MySQL:
一个可能的问题是, MySQL的默认socket文件被修改了, 而在System Preferences Pane中的GUI工具是使用默认的/tmp/mysql.sock. 请检查/etc/my.cnf文件, 里面可以修改socket的位置.
8. MySQL GUI管理程序:
MySQL有一个叫MySQl Tools的官方GUI管理程序, 到http://dev.mysql.com/downloads/gui-tools/5.0.html可以下载看到它的介绍. OS X的包包括三个应用程序.其中的MySQL Administrator.app比较实用.
运维网声明
1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网 享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com
所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298
本贴地址:https://www.yunweiku.com/thread-217894-1-1.html
上篇帖子:
Mac OS X Leopard: 配置Apache, PHP, SQLite, MySQL, and phpMyAdmin(一)
下篇帖子:
Mac OS X Leopard: 配置Apache, PHP, SQLite, MySQL, and phpMyAdmin(三)