原文http://ninghao.net/blog/1368
安装 mysql
mysql 可以管理网站用到的数据库,WordPress 和 Drupal 也都支持 mysql 数据库。所以我们的 Web 运行环境里,需要安装一个 mysql 。之前我们已经添加了资源库,所以可以直接使用 yum 命令去安装 mysql :
yum install mysql-server
安装完成后,使用 service 命令启动 mysql 服务:
service mysqld start
然后我们需要简单配置一下 mysql ,默认安装以后 mysql 的 root 用户是没有密码的,对于生产环境来说,这肯定是不行的,另外还有一些安全相关的设置,可以使用下面这行命令去配置一下,它是一个向导,问你一些问题,你要给出答案,比如是否要设置 root 用户的密码, 密码是什么等等。
mysql_secure_installation
Enter current password for root (enter for none):
解释:输入当前 root 用户密码,默认为空,直接回车。
Set root password? [Y/n] y
解释:要设置 root 密码吗?输入 y 表示愿意。
Remove anonymous users? [Y/n] y
解释:要移除掉匿名用户吗?输入 y 表示愿意。
Disallow root login remotely? [Y/n] y
解释:不想让 root 远程登陆吗?输入 y 表示愿意。
Remove test database and access to it? [Y/n] y
解释:要去掉 test 数据库吗?输入 y 表示愿意。
Reload privilege tables now? [Y/n] y
解释:想要重新加载权限吗?输入 y 表示愿意。
更改MySQL目录
下面我整理一下把MySQL从/var/lib/mysql目录下面转移到/home/mysql_data/mysql目录的具体操作:
1、首先我们需要关闭MySQL,命令如下:
service mysqld stop
2、然后是转移数据,为了安全期间,我们采用复制命令cp,先找到mysql的原目录
cd /var/lib
ls
运行这个命令之后就会看到mysql的目录了,然后执行cp命令
cp -a mysql /mnt/web/data/ #这样就把数据库复制到/mnt/web/data/mysql/下面去了
注意:(-a这个参数一定要带着,否则复制过去的权限就不对了。)
如果数据库比较大的话,时间会比较长,可能会超时,具体怎么设置ssh不超时的办法,请大家自己找相关资料。
3、然后我们修改配置文件,一共有三个,下面我一一说明:
修改第一个文件:修改之前先备份cp /etc/my.cnf /etc/my.cnf.back
vi /etc/my.cnf
打开之后修改datadir的目录为/mnt/web/data/mysql
把socket改成/mnt/web/data/mysql/mysql.sock #为了安全起见,你可以把原来的注释掉,然后重新加入一行,改成现在的目录。
==================================================================================
修改第二个文件:修改之前先备份 cp /etc/init.d/mysqld /etc/init.d/mysqld.back
vi /etc/init.d/mysqld
注意:准确的位置是/etc/rc.d/init.d/mysqld,由于这里这里有一个/etc/init.d到/etc/rc.d/init.d的映射,
所以用上面的命令即可,也简单。
把其中get_mysql_option mysqld datadir "/var/lib/mysql"一行中,等号右边的路径改成你现在的实际存放路径:/mnt/web/data/mysql
=================================================================================
修改第三个文件:修改之前先备份 cp /usr/bin/mysqld_safe /usr/bin/mysqld_safebak
vi /usr/bin/mysqld_safe
这里也是修改 DATADIR=/var/lib/mysql的目录为/mnt/web/data/mysql
==================================================================================
4、下面需要建立一个mysql.sock的链接:
ln -s /mnt/web/data/mysql/mysql.sock /var/lib/mysql/mysql.sock
至此所有的修改都完成了,下面启动mysql
service mysqld start
或者重启linux
reboot
如果能正常启动,说明修改成功。