Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1476443
  • 博文数量: 295
  • 博客积分: 10051
  • 博客等级: 上将
  • 技术积分: 3850
  • 用 户 组: 普通用户
  • 注册时间: 2008-04-11 08:50
文章分类

全部博文(295)

文章存档

2011年(1)

2009年(4)

2008年(290)

我的朋友

分类: BSD

2008-04-19 12:48:22

以下是以5.4-RELEASE-p6+mysql-4.0.25为例

cd /usr/ports/databases/mysql40-server
make install clean;

/usr/local/bin/mysql_install_db

chown -R mysql /var/db/mysql
##这一步一定不能少,否则mysql将启动不起来

启动mysql
/usr/local/bin/mysqld_safe &
或者/usr/local/etc/rc.d/mysql-server.sh start

/usr/local/bin/mysqladmin -u root password '123456'
#一定要做这个,否则不安全的

rehash

mysql -u root -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 3 to server version: 4.0.24

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql>; exit
Bye


在/etc/rc.conf里面加入mysql_enable="YES"


不过,刚装完的mysql默认的数据库连接是100个,远远不能应付大网站的要求。
#ee /usr/local/bin/mysqld_safe
向下寻找到第308行,其行很长,以$NOHUP_NICENESS开头,以>;>; $err_log 2>;&1结尾。该行被嵌套在一个if语句里。
在这行末尾的 >;>; $err_log 2>;&1前面加上 -O max_connections=1000 ,(注意前后各留一个空格)。
然后向下找到310行,也是很长的一行,以eval "$NOHUP_NICENESS开头,以>;>; $err_log 2>;&1结尾。同样在 >;>; $err_log 2>;&1前面加上 -O max_connections=1000 。

重启mysql以后
cd /usr/local/bin
mysqladmin -uroot -p variables
将会打出一个长列表,按scroll lock后向上卷动屏幕,能看到里面有一项显示
| max_connections | 1000 |
那么表示最大并发连接数已经修改到1000了。

####根据北京野狼老兄的说法,一般的机器还是不要更改它为好。

一般志强2,4的,1-2G内存的也就开256到512个连接。数据库的每个连接都会占用相当的cpu,和内存。当然用oracle只能更消耗资源,连接多了,系统就跑不动了


至此,mysql数据库就装完了。

下面我们安装phpmyadmin来通过web界面来控制mysql数据库。
注:假设您已经安装了apache,并已经支持php,假设apache的主目录为/usr/www,大家再安装的时候请通过ports安装,我因为很早之前是源代码编译安装的,所以下面还以源代码编译安装为例来说明如何使用phpmyadmin。
ports安装也很方便,

/usr/ports/databases/phpmyadmin
make install clean

目前稳定的版本已经是 2.6.3.1,不过2.5.6的也可以用,如果您现在安装请用最新的稳定版本。

tar xjvf phpMyAdmin-2.5.6.tar.bz2
mv phpMyAdmin-2.5.6 /usr/www/phpmyadmin
cd /usr/www/phpmyadmin
ee config.inc.php

(1)查找$cfg['PmaAbsoluteUri'] = ''; ,
 将该行内容更改为$cfg['PmaAbsoluteUri'] = 'http://您的ip或域名/phpmyadmin/';

(2)查找 $cfg['Servers'][$i]['auth_type'] = 'config';
更改为 $cfg['Servers'][$i]['auth_type'] = 'http';
这个时候用http://您的ip或域名/phpmyadmin/来访问的时候需要输入用户名和密码

####如果不改上面的而改下面的:
$cfg['Servers'][$i]['user']          = 'root';      
$cfg['Servers'][$i]['password']      = '123456';
#此处的密码是
/usr/local/bin/mysqladmin -u root password '123456'
 里面添加的密码
则可以直接以http://您的ip或域名/phpmyadmin/来访问,不需要再输入用户名和密码了。

find /usr/www/phpmyadmin -type d -exec chmod 755 {} \;
find /usr/www/phpmyadmin -type f -exec chmod 644 {} \;

-----------------加密phpmyadmin目录,只有知道密码的用户可以查看数据库信息--------------- 
ee /usr/local/etc/apache2/httpd.conf


    deny from all 
    Options None 
    AllowOverride AuthConfig 
    Order deny,allow 


ee /usr/www/phpmyadmin/.htaccess

AuthType Basic 
AuthUserFile /usr/local/phpmyadmin.passwd 
AuthName 想偷看数据库就得过我这一关,嘿嘿^_^ 
require valid-user 
satisfy any 


/usr/local/sbin/htpasswd -bc /usr/local/phpmyadmin.passwd jxtm lovefreebsd

/usr/local/etc/rc.d/apache2.sh restart重启apache 
阅读(646) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~