在VPS上安装完MySQL之后,缺省的用户只有root@localhost,新添加MySQL用户最简单的方法是:
在phpmyadmin里面执行如下语句(语句最后要加分;号):
grant all privileges on DBNAME.* to USERNAME@localhost identified by 'PASSWORD'
flush privileges
当然在SSH里面运行
mysql -uroot -p
之后也能够输入上面的sql语句,效果一样。
解释如下:
这将添加新用户,用户名称是USERNAME,密码是PASSWORD,这个用户在DBNAME这个数据库里面有修改,读取等权限。
这里的手动安装指的是不用Linux操作系统的包管理方式来安装,而是自己去下载phpmyadmin的文件包,自己来配置安装。由于不使用apt-get/rpm等,所以本文的安装方式适合各种Linux VPS。
安装准备
确保Web Server, PHP, mysql都已经安装配置好了。容易忘记的是安装下面两个php组件:php5-mcrypt, php5-mysql,忘记了不要紧,yum/apt-get安装了就是。
下载
phpmyadmin的官方网站好像国内不能下载,所以我去华军软件下载phpMyAdmin 2.11.7 Final for Linux,下载地址是:http://www.onlinedown.net/soft/15758.htm
选择安装目录
你准备在哪个目录下安装phpmyadmin? 这个目录要在web server(apache, nginx等)的文档目录之下。我选定的安装目录是 /var/www/phpmyadmin,因为/var/www是我的VPS的web server的文档目录。测试一下目录的有效性:
cd /var/www/
mkdir phpmyadmin
echo "GOOD VPS" > phpmyadmin/test.html
echo '< ?phpinfo();?>' > phpmyadmin/info.php
然后在浏览器里访问: http://myhost.com/phpmyadmin/test.html 应该能看到GOOD VPS字样,如果看不到,请不要继续,先把这个问题解决了再继续。同样,访问http://myhost.com/phpmyadmin/info.php应该能看到php输出的信息。
开始安装
cd /var/www/phpmyadmin
tar zxf phpMyAdmin-2.11.7-all-languages.tar.gz
mv phpMyAdmin-2.11.7-all-languages/* .
ls index.php #应该能看到index.php
然后在浏览器访问:http://myhost.com/phpmyadmin 应该会看到错误信息如下:
#1045 - Access denied for user 'root'@'localhost' (using password: NO)
这是因为还没有配置phpmyadmin,配置phpmyadmin可以通过它自带的界面进行配置,但是这种方法可选项非常多,配置很复杂,我不推荐这种方法。我的简单的配置方法是:
cd /var/www/phpmyadmin
cp config.sample.inc.php config.inc.php
vim config.inc.php # 修改相应部分为:
然后修改config.inc.php的相应部分:
$cfg['blowfish_secret'] = 'hellorashost';
$cfg['auth_type'] = 'cookie';
然后在浏览器访问:http://myhost.com/phpmyadmin 应该会看到登录界面了。
MySQL是Linux的重要组件,所有的Linux几乎都自带MySQL。RasHost VPS为了给所有客户提供一个干净的VPS环境,没有预装MySQL,毕竟不是所有的客户都用MySQL。
本文给出在Linux VPS下怎样手工安装配置和优化mysql
安装
在Debian/Ubuntu下:
apt-get install mysql-server-5.0
在CentOS下:
yum install -y mysql-server
配置
主要是中文环境配置,配置MySQL全面缺省支持UTF-8。修改mysql的配置文件/etc/mysql/my.cnf,在[mysqld] 和 [client]段都加入如下指令:
default-character-set=utf8
优化
MySQL一般包括3个服务,mysql, mysqld-ndb, mysql-ndb-mgm。mysql服务就是我们常有的数据库服务,mysqld-ndb是mysql cluster用的,mysql-ndb-mgm是mysql cluster的管理用的,我们在VPS上一般用不到mysql cluster,所以应该禁止掉mysql-ndb和mysql-ndb-mgm。
在Debian/Ubuntu下:
update-rc.d -f mysql-ndb remove
update-rc.d -f mysql-ndb-mgm remove
在CentOS下:
chkconfig mysql-ndb off
chkconfig mysql-ndb-mgm off