Home >Database >Mysql Tutorial >linux MySQL数据库位置变更及更改库名_MySQL

linux MySQL数据库位置变更及更改库名_MySQL

WBOY
WBOYOriginal
2016-06-01 13:44:45884browse

bitsCN.com

 

Linux环境下:MySQL默认的数据文件存储目录为/var/lib/mysql。今天想干两件事,把库改名(测试了三种方法),另外就是更改MySQL数据库目录位置。 库改名:1、RENAME DATABASE zhoz_db to zhoz_db_bak
mysql> RENAME DATABASE zhoz_db to zhoz_db_bak; ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'DATABASE test to test_bak' at line 1 报错,网上查了下好像在mysql6环境下可以。测试环境为mysql5。
2、mv /var/lib/mysql/zhoz_db /var/lib/mysql/zhoz_db_bak 成功执行,也改了名。但是进入phpMyAdmin下发现有这个库,但显示不了表。 其实单独操作改名,是不行的。相应的表也需要作更改操作。当然,如果仅作备份来用,是可以的。
3、两全其美的方法: 在phpMyAdmin下操作: 选择要改名的库→点右上角的[操作]→重新命名数据库为:「zhoz_db_bak」→执行更改MySQL数据库目录位置:MySQL默认的数据文件存储目录为/var/lib/mysql,目标移到/home/zhozcom_data下:
1、home目录下建立data目录:cd /home mkdir zhozcom_data
2、把MySQL服务进程停掉:mysql -u root -p shutdown
3、把/var/lib/mysql整个目录移到/home/zhozcom_data mv /var/lib/mysql /home/zhozcom_data/
这样就把MySQL的数据文件移动到了/home/zhozcom_data/mysql下
4、找到my.cnf配置文件 如果/etc/目录下没有my.cnf配置文件,请到/usr/share/mysql/下找到*.cnf文件,拷贝其中一个到/etc/并改名为my.cnf中。 命令如下:[root@test1 mysql]# cp /usr/share/mysql/my.cnf /etc/my.cnf
5、编辑MySQL的配置文件/etc/my.cnf 为保证MySQL能够正常工作,需要指明mysql.sock文件的产生位置。 修改socket=/var/lib/mysql/mysql.sock的值为:socket=/home/zhozcom_data/mysql.sock 操作如下:[root@zhoz etc]# vi  my.cnf # The MySQL server[mysqld]  port = 3306#socket  = /var/lib/mysql/mysql.sock (原内容,通常为了安全用#注释此行)socket  = /home/zhozcom_data/mysql/mysql.sock (加上此行)
6、修改MySQL启动脚本/etc/init.d/mysql 修改MySQL启动脚本/etc/init.d/mysql: 把其中datadir=/var/lib/mysql修改成现在的路径:datadir=/home/zhozcom_data/mysql。 方法:[root@zhoz etc]# vi /etc/init.d/mysql #datadir=/var/lib/mysql(注释此行)datadir=/home/data/mysql (加上此行)
7、重新启动MySQL服务/etc/init.d/mysql start
一切OK了,不行的话就查看权限:drwxr-xr-x 目录。重启库也是需要的。  

bitsCN.com
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn