Linux下更改MySQL的数据库目录

Linux下更改MySQL的数据库目录

今天要在一台双线云主机上安装 MySQL 数据库,操作系统为 CentOS 5.8,因为该机安装的时候 / 分区只有20G,还有一个 300G 的扩展磁盘分区挂载在 /disk ,因此需要将 MySQL 的数据库目录设置在 /disk/mysql ,下面是具体操作步骤。

 

操作系统:CentOS 5.8

MySQL 版本:5.5.25

目标:更改MySQL数据库目录

源目录:/var/lib/mysql   (系统默认目录)

目标目录:/disk/mysql

 

1. 安装 MySQL 数据库软件

如果已经有,则跳过。MySQL 最新版本为 5.5.25

 

-bash-3.2# rpm -qa | grep MySQL

-bash-3.2# mkdir -p setup
-bash-3.2# cd setup/
-bash-3.2# wget "http://dev.mysql.com/get/Downloads/MySQL-5.5/MySQL-client-5.5.25-1.rhel5.i386.rpm/from/http://mirror.csclub.uwaterloo.ca/mysql/"
--2012-06-06 16:48:29--  http://dev.mysql.com/get/Downloads/MySQL-5.5/MySQL-client-5.5.25-1.rhel5.i386.rpm/from/http://mirror.csclub.uwaterloo.ca/mysql/
2012-06-06 16:49:52 (216 KB/s) - `MySQL-client-5.5.25-1.rhel5.i386.rpm' saved [17860149/17860149]

-bash-3.2# wget "http://dev.mysql.com/get/Downloads/MySQL-5.5/MySQL-server-5.5.25-1.rhel5.i386.rpm/from/http://mysql.mirror.iweb.ca/"
--2012-06-06 16:50:01--  http://dev.mysql.com/get/Downloads/MySQL-5.5/MySQL-server-5.5.25-1.rhel5.i386.rpm/from/http://mysql.mirror.iweb.ca/

 

2012-06-06 16:57:11 (132 KB/s) - `MySQL-server-5.5.25-1.rhel5.i386.rpm' saved [54564826/54564826]

 

-bash-3.2# rpm -ivh MySQL-server-5.5.25-1.rhel5.i386.rpm MySQL-client-5.5.25-1.rhel5.i386.rpm
error: Failed dependencies:
        libaio.so.1 is needed by MySQL-server-5.5.25-1.rhel5.i386
        libaio.so.1(LIBAIO_0.1) is needed by MySQL-server-5.5.25-1.rhel5.i386
        libaio.so.1(LIBAIO_0.4) is needed by MySQL-server-5.5.25-1.rhel5.i386

-bash-3.2# yum install -y libaio

Installed:
  libaio.i386 0:0.3.106-5                                                                                                                                             

Complete!
-bash-3.2# rpm -ivh MySQL-server-5.5.25-1.rhel5.i386.rpm MySQL-client-5.5.25-1.rhel5.i386.rpm
Preparing...                ########################################### [100%]
   1:MySQL-client           ########################################### [ 50%]
   2:MySQL-server           ########################################### [100%]

PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !
To do so, start the server, then issue the following commands:

/usr/bin/mysqladmin -u root password 'new-password'
/usr/bin/mysqladmin -u root -h localhost password 'new-password'

Alternatively you can run:
/usr/bin/mysql_secure_installation

which will also give you the option of removing the test
databases and anonymous user created by default.  This is
strongly recommended for production servers.

See the manual for more instructions.

Please report any problems with the /usr/bin/mysqlbug script!

-bash-3.2#

 

2. ·停止 MySQL 服务器

如果MySQL服务器正在运行,应该先将其停止。

我因为刚安装好,所以并未运行。

-bash-3.2# service mysql stop
 ERROR! MySQL server PID file could not be found!
-bash-3.2# service mysql status
 ERROR! MySQL is not running

 

 

3. 移动数据库目录到目标位置

-bash-3.2# mv /var/lib/mysql /disk

 

-bash-3.2# ls /disk/
logs  lost+found  mysql
-bash-3.2#

 

4. 创建或修改配置文件 /etc/my.cnf

 

[client]
default-character-set=gbk
socket=/disk/mysql/mysql.sock

[mysqld]
character-set-server=gbk
socket=/disk/mysql/mysql.sock

 

 

5. 修改 MySQL 启动脚本 /etc/init.d/mysql

 

原内容

# If you change base dir, you must also change datadir. These may get
# overwritten by settings in the MySQL configuration files.

basedir=
datadir=

 

 

修改后的内容

# If you change base dir, you must also change datadir. These may get
# overwritten by settings in the MySQL configuration files.

basedir=
datadir=/disk/mysql

 

6. 启动 MySQL 服务器

-bash-3.2# service mysql start 
Starting MySQL.. SUCCESS!
-bash-3.2# service mysql status
 SUCCESS! MySQL running (4874)
-bash-3.2#

 

7. 测试 MySQL 访问是否正常

-bash-3.2# mysql -p
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 188
Server version: 5.5.25 MySQL Community Server (GPL)

Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

 

O.K.!

 

本文链接:http://codingstandards.iteye.com/blog/1553945


END.

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值