`
phpxiaoxin
  • 浏览: 252998 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

MacPorts:Install and configure MySQL 5

    博客分类:
  • mac
阅读更多

macport相当于linux下的yum或者是aptget等包管理软件,可以很方便的安装软件。下面来看一下他的基本命令

基本命令:mac port command

转自:http://www.joycodes.com/index.php/mac-port-update-command/

 

* 更新port自身


sudo port selfupdate

* 列表


post list


* 搜索包


port search package #package为搜 索名称,支持通配符

* 安装


sudo port install package

* 删除

sudo port uninstall package

* 更新过期的包



sudo port upgrade outdated

* 删除为激活的包


sudo port uninstall inactive

有关port的命令还有很多,详情请参考http://guide.macports.org/

 

===========

 

Install and configure MySQL 5 with MacPorts

转自:http://beike.iteye.com/blog/617341

I decided to move my MySQL server installation from the server I installed from MySQL .com to macports. Why? I believe MacPorts will simplify future upgrades. I'd also like to keep my LAMP installs in the same location. If you haven't already, install and configure MacPorts . Here are the steps I'll go over:

  • Intall MySQL 5
  • Create the initial MySQL databases
  • Options for starting MySQL
  • Confirm that MySQL is running
  • Set Basic MySQL Security

Install MySQL 5

You can install using Porticus, Port Authority, or from the command line:

  1. sudo  port  install  mysql5 +server  
 

 

The +server variant is required if you'll need to create a system startup item for MySQL 5. You'll see plenty of output during the build process and an activation message just before the installation completes.

Create initial MySQL databases

MySQL databases are kept in /opt/local/var/db/mysql5/ and you'll notice that this directory is empty. Run mysql_install_db to create the mysql and test databases.

  1. sudo  /opt/local/lib/mysql5/bin/mysql_install_db --user=mysql    
 

Password:

You should see output similar to the following:

  1. nstalling MySQL  system tables...  
  2. OK  
  3. Filling help tables...  
  4. OK  
  5.   
  6. To start mysqld at boot time you have to copy  
  7. support-files/mysql .server to the right place for your system  
  8.   
  9. PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL  root USER !  
  10. To do so, start the server, then issue the following commands:  
  11.   
  12. /opt/local/lib/mysql5/bin/mysqladmin -u root password 'new-password'   
  13. /opt/local/lib/mysql5/bin/mysqladmin -u root -h MacBook.local password 'new-password'   
  14.   
  15. Alternatively you can run:  
  16. /opt/local/lib/mysql5/bin/mysql_secure_installation  
  17.   
  18. which will also give you the option of removing the test  
  19. databases and anonymous user created by default.  This is  
  20. strongly recommended for production servers.  
  21.   
  22. See the manual for more instructions.  
  23.   
  24. You can start the MySQL  daemon with:  
  25. cd /opt/local ; /opt/local/lib/mysql5/bin/mysqld_safe &  
  26.   
  27. You can test the MySQL  daemon with mysql -test-run.pl  
  28. cd /opt/local/mysql -test ; perl mysql -test-run.pl  
  29.   
  30. Please report any problems with the /opt/local/lib/mysql5/bin/mysqlbug script!  
  31.   
  32. The latest information about MySQL  is available at http://www.mysql .com/  
  33. Support MySQL  by buying support/licenses from http://shop.mysql .com/  

 

Options for starting MySQL

I personally don't want MySQL to start at system start up, I'll start it manually when I need it. If you're energy conscious and set your Mac to go to sleep you won't want to set mysqld to start at system boot either. If, however, you need MySQL to always start at system boot

sudo launchctl load -w /Library/LaunchDaemons/org.macports.mysql5.plist

  1. sudo  launchctl load -w  /Library/LaunchDaemons/org.macports.mysql5.plist  
 

 

Whether you install the startup item or not, it's handy to add aliases to your profile to start and stop mysql from the command line. Use your favorite text editor (vi, pico, emacs) to add aliases.

vi ~/.profile

or

vi ~/.bash_profile

Add the following:

  1. alias mysqlstart= 'sudo /opt/local/bin/mysqld_safe5 &'
  2. alias mysqlstop= '/opt/local/bin/mysqladmin5 -u root -p shutdown'
 

Note: Notice the '5' at the end of mysqld_safe? MacPorts adds version numbers at the end of executables to allow the installation of multiple versions (i.e. MySQL 4 and 5). You'll need to add the version number at the end of some of the executables you use, like mysqladmin5. Now you're ready to start your MySQL server with:

mysqlstart

or, if you didn't create aliases

sudo /opt/local /share/mysql5/mysql /mysql .server start

Confirm that MySQL is running

If MySQL 's okay, you should see a server start confirmation message. You can test to ensure that MySQL is running with (leave password empty when prompted):

mysqladmin5 -u root -p ping  Enter password:  mysqld is alive

or with

mysql5 -u root -p Enter password:  

Welcome to the MySQL monitor.  Commands end with ; or \g. Your MySQL connection id is 2 to server version: 5.0 .45  Type 'help;' or '\h ' for help . Type '\c ' to clear the buffer.

If you get the following error...

ERROR 2002 ( HY000) : Can't connect to local MySQL server through socket ' /tmp/mysql .sock' (2)

...set the mysqld_safe socket path in a new MySQL configuration file. Create /opt/local/etc/mysql5/my.cnf, add the following to it, save, the try again.

[ mysqld_safe] socket = /tmp/mysql .sock

NOTE: If you've installed MacPort's PHP 5 you will probably need to tell PHP where the MySQL socket is. Edit your php.ini file located at /opt/local/etc/php.ini.

mysql .default_socket = /tmp/mysql .sock

Set Basic MySQL Security

Finally, set the root mysql password to secure your server.

mysqladmin5 -u root password

Moving MySQL data from other installations

If, like me, you want to move data from a previous MySQL 5 install (i.e. /usr/local/mysql /data), be sure to stop MySQL first. You'll want to overwrite the mysql database you created after installation when copying over data files and indices. Ensure that everything copied to /opt/local/var/db/mysql5/ remains owned by mysql . Refer to the MySQL documentation if you're upgrading from MySQL 4 to 5.

Now get busy querying.

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics