Centos中更改默认mysql数据存放到数据盘

更改网站文件目录

如果你使用的是军哥的lnmp安装包,那默认的虚拟主机配置环境在 /usr/local/nginx/conf/vhost/ 目录里,修改:
vi /usr/local/nginx/conf/vhost/域名.conf

可以打开对应的虚拟主机配置,然后修改其中的网站目录。然后执行:

cp -a 老目录 新目录
chown www:www -R 新目录
更改MySQL数据存放目录

1.停掉mysql服务器:

/etc/init.d/mysql stop

2.下面新目录以/storage/mysql/ 为例,然后复制旧目录的数据库到新目录:

cp -R /usr/local/mysql/var/* /storage/mysql/

3.将新目录赋权为mysql用户组:
chown mysql:mysql -R /storage/mysql/

4.再修改配置文件:

vi /etc/my.cnf

查找mysql数据原有目录 /usr/local/mysql/var 修改为:

datadir = /storage/mysql
innodb_data_home_dir = /storage/mysql
innodb_log_group_home_dir = /storage/mysql
5.启动mysql:
/etc/init.d/mysql start

【补充说明】:阿里云、腾讯云服务器的硬盘是分两块,一个系统盘,一个数据盘,默认数据盘没有被挂载,所以除了系统和环境软件会安装在系统盘里,网站数据等也在系统盘里,数据盘却空置,没法利用其空间与区分系统和数据管理的好处。

这里做下说明,如何让网站数据存储在数据盘?
如果使用常用的LNmp一键安装包安装系统环境,网站根目录默认为: /home/wwwroot

有两个方法

1 . 直接挂载到目录/home/wwwroot
这个直接按阿里云官方的教程操作就可以了,只是需要建立目录 # mkdir /home/wwwroot
然后把 /mnt 替换为 /home/wwwroot 即可

操作完上面这些,再安装LNmp一键包即可。
2 . 软件安装在系统盘,但网站数据放在数据盘
LNmp还是安装在系统盘里,阿里云服务器的数据盘挂载也按原来的操作
只要在添加网站时将默认目录修改成 /mnt 即可
这样的好处有两点:
1.  可以使用到更多的数据盘空间
2. 重装系统或环境不会影响网站数据,当然格式化数据盘也不会影响网站数据。
*另外也可以把数据盘再多分一个区,把其中一个分区挂载到数据库目录,比如/usr/local/mysql,方法同上。
*如果现在网站已经建在系统盘下了,还有办法迁移到数据盘吗?站点在home下,数据盘还可以加载到home目录吗?
当然可以,先将/home目录下的文件移动到其他目录,然后把数据盘挂载到/home,把数据移回即可

【如果之前安装lnmp的时候,没有安装mysql innodb数据库引擎,怎么办呢?】

1、如果你选择安装的是 mysql-5.5.37,那么只需要修改 /etc/my.cnf 配置文件即可
先看下 centos.sh 安装脚本是如何判断是否安装 innodb 的:
if [ $installinnodb = "y" ]; then
sed -i 's:#innodb:innodb:g' /etc/my.cnf
sed -i 's:/usr/local/mysql/data:/usr/local/mysql/var:g' /etc/my.cnf
else
sed '/skip-external-locking/i\default-storage-engine=MyISAM\nloose-skip-innodb' -i /etc/my.cnf
fi

 根据上面的命令,我们修改  /etc/my.cnf 即可:

a、找到 loose-skip-innodb 并注释掉:

default-storage-engine=MyISAM
#loose-skip-innodb
skip-external-locking

b、搜索 innodb 并取消innodb前面的注释:

# Uncomment the following if you are using InnoDB tables
innodb_data_home_dir = /usr/local/mysql/var
innodb_data_file_path = ibdata1:10M:autoextend
innodb_log_group_home_dir = /usr/local/mysql/var
# You can set .._buffer_pool_size up to 50 - 80 %
# of RAM but beware of setting memory usage too high
innodb_buffer_pool_size = 16M
innodb_additional_mem_pool_size = 2M
# Set .._log_file_size to 25 % of buffer pool size
innodb_log_file_size = 5M
innodb_log_buffer_size = 8M
innodb_flush_log_at_trx_commit = 1
innodb_lock_wait_timeout = 50
重启,mysql已经启用 innodb 引擎了:

2、如果你不幸的选择了低版本的mysql 5.1.73并且没有选装 innodb,那么只有重新编译mysql了;当然你也可以升级mysql,在升级的时候,也可以安装innodb,但是一般不建议升级安装。

我们来看下centos.sh的原始编译的脚本:

cd mysql-5.1.73/
if [ $installinnodb = "y" ]; then
./configure --prefix=/usr/local/mysql --with-extra-charsets=complex --enable-thread-safe-client --enable-assembler --with-mysqld-ldflags=-all-static --with-charset=utf8 --enable-thread-safe-client --with-big-tables --with-readline --with-ssl --with-embedded-server --enable-local-infile --with-plugins=innobase
else
./configure --prefix=/usr/local/mysql --with-extra-charsets=complex --enable-thread-safe-client --enable-assembler --with-mysqld-ldflags=-all-static --with-charset=utf8 --enable-thread-safe-client --with-big-tables --with-readline --with-ssl --with-embedded-server --enable-local-infile
fi
make && make install

需要我们重新编译mysql,注意,重编译会导致原先的数据丢失,请先备份:

cd mysql-5.1.73/
./configure --prefix=/usr/local/mysql --with-extra-charsets=complex --enable-thread-safe-client --enable-assembler --with-mysqld-ldflags=-all-static --with-charset=utf8 --with-big-tables --with-readline --with-ssl --with-embedded-server --enable-local-infile --with-plugins=innobase
make && make install

注意,军哥的脚本里,这个参数:--enable-thread-safe-client出现了2次,请手动去掉一个

时间: 2024-07-29 23:00:58

Centos中更改默认mysql数据存放到数据盘的相关文章

如何在win7纯净版电脑中更改默认的浏览器设置?

  如果你不曾在win7 64位旗舰版iso电脑中安装其他的浏览器的话,那么咱们每次打开网页的时候,系统便会自动的使用win7纯净版电脑中唯一的浏览器,也就是系统自带的IE浏览器来打开网页,但是若是咱们有安装过其他的浏览器的话,大家是否记得,咱们在安装的时候就会出现提示,是否需要将该浏览器设置为默认浏览器,如果你有这样设置的话,那么之后的网页便会以你设置的浏览器来打开了,这便是win7纯净版电脑的默认浏览器设置.那么如果咱们想要更改这个默认浏览器的话,要如何操作呢?下面,小编就来详细的介绍一下吧

Linux中更改转移mysql数据库目录的步骤_Mysql

本文是简单整理一下这几天把MySQL从/var/lib/mysql目录下面转移到/home/mysql_data/mysql下面具体操作. 首先我们需要关闭MySQL,命令如下: #service mysqld stop 网上有很多人都是用的mysqladmin -u root -p shutdown,不过我这个是系统安装的是kloxo面板,root密码并不知道,虽然可以重置,但是比较麻烦. 然后是转移数据,为了安全期间,我们采用复制的命令cp,先找到mysql的原目录 #cd /var/lib

CentOS中Apache默认目录 日志及防止木马跨站设置

Apache默认的网站目录设置 Apache默认的网站目录是在/var/www/html,我们现在要把网站目录更改到/home/wwwroot/web1/htdocs,操作如下 创建目录: cd /home mkdir wwwroot cd wwwroot mkdir web1 cd web1 mkdir htdocs touch index.php 操作步骤: 1.vi /etc/httpd/conf/httpd.conf 找到 DocumentRoot "/var/www/html"

CentOS中Nginx+Apache+MySQL+PHP+Tomcat的配置教程(支持PHP、JAVA)

先来看CentOS6.4+Apache-2.2.22+Mysql-5.1.63+PHP-5.2.17+phpmyadmin-3.4.10.2+ZendDebug环境安装 LAMP安装手记(CentOS6.4+Apache-2.2.22+Mysql-5.1.63+PHP-5.2.17+phpmyadmin-3.4.10.2+ZendDebug)  代码如下 复制代码 rpm -e httpd rpm -e mysql rpm -e php yum -y remove httpd php mysql

Centos中彻底删除Mysql(rpm、yum安装的情况)

 我用的centos6,mysql让我整出了各种问题,我想重装一个全新的mysql,yum remove mysql-server mysql之后再install并不能得到一个干净的mysql,原来的/etc/my.cnf依然没变,datadir里面的数据已没有任何变化,手动删除/etc/my.cnf,/usr/lib/mysql,/usr/share/mysql,/var/lib/mysql也不会起任何作用,各种查找之后发现应该是根本没删除干净 代码如下: [root@data lib]# r

Centos中彻底删除Mysql(rpm、yum安装的情况)_Mysql

我用的centos6,mysql让我整出了各种问题,我想重装一个全新的mysql,yum remove mysql-server mysql之后再install并不能得到一个干净的mysql,原来的/etc/my.cnf依然没变,datadir里面的数据已没有任何变化,手动删除/etc/my.cnf,/usr/lib/mysql,/usr/share/mysql,/var/lib/mysql也不会起任何作用,各种查找之后发现应该是根本没删除干净 复制代码 代码如下: [root@data lib

如何在 Ubuntu 中更改默认浏览器和 Email 客户端

Ubuntu 自带了一些已经预装的默认应用程序,包括非常流行的 Mozilla 火狐浏览器和 Thunderbird 的 e-mail 客户端. 尽管这两个应用都有它们自己的粉丝,但是没有一个应用能符合每个人的口味和需要.我们经常收到邮件或者推文,询问我们可以怎样在 Ubuntu 上更改默认浏览器或者设置处理邮件链接为不同的电子邮件客户端等. 我们在这里不仅讨论如何安装不同的软件,还包括如何给一个特定的文件,链接或者内容类型设置其系统处理应用. 在 Ubuntu 中更改默认应用程序,包括浏览器.

CentOS将MySQL数据库存放目录放到挂载数据盘的方法

一般我们在购买VPS的时候,都会赠送一个系统盘,一般都是10G到40G之间,当您的网站数据较多的时候,我们就会要考虑购买数据盘,然后将网站数据和MySQL数据库的存放目录放到挂载数据盘上,这样的话,不至于将系统盘充满掉,当然,另外一个好处是,无论您的系统盘出现什么问题,也不会影响到您的数据库和网站数据. 一旦您的系统盘满了,就会导致数据库启动失败. 在Xen架构的主机和腾讯云的主机会出现,据部分朋友反应说,坑爹的腾讯云就是分配8G. linux下CentOS修改MySQL数据存放目录过程 1.博

Linux中更改mysql数据文件存储路径

很多时候,mysql的数据会非常大,数据默认放在/var/lib/mysql,由于/var所划分的空间不够大,所以我们需要将mysql数据存放路径修改一下,放到大分区里面,以便可以应付mysql数据增长. 1.设置新的存放路径 mkdir -p /data/mysql 2.复制原有数据 cp -R /var/lib/mysql/* /data/mysql 3.修改权限 chown -R mysql:mysql /data/mysql 4.修改配置文件 vi /etc/mysql/my.cnf d