linux mysql 数据目录文件夹移动及所遇到的问题
一 、如果是fedora下用rpm包安装的mysql,修改方法如下: 如果这里说的不够清楚,可以到http://www.vipkj.net/post-839.html给我留言 MySQL默认的数据文件存储目录为/var/lib/mysql。假如要把目录移到/home/data下需要进行下面几步: 1、home目录下建立data目录 cd /home mkdir data 2、把MySQL服务进程停掉: mysqladmin -u root -p shutdown 3、把/var/lib/mysql整个目录移到/home/data mv /var/lib/mysql /home/data/ 这样就把MySQL的数据文件移动到了/home/data/mysql下 4、找到my.cnf配置文件 如果/etc/目录下没有my.cnf配置文件,请到/usr/share/mysql/下找到*.cnf文件,拷贝其中一个到/etc/并改名为my.cnf)中。命令如下: [root@test1 mysql]# cp /usr/share/mysql/my-medium.cnf /etc/my.cnf 5、编辑MySQL的配置文件/etc/my.cnf 为保证MySQL能够正常工作,需要指明mysql.sock文件的产生位置。修改socket=/var/lib/mysql/mysql.sock一行中等号右边的值为:/home/mysql/mysql.sock 。操作如下: vi my.cnf (用vi工具编辑my.cnf文件,找到下列数据修改之) # The MySQL server [mysqld] port = 3306 #socket = /var/lib/mysql/mysql.sock(原内容,为了更稳妥用“#”注释此行) socket = /home/data/mysql/mysql.sock (加上此行) 6、修改MySQL启动脚本/etc/rc.d/init.d/mysql 最后,需要修改MySQL启动脚本/etc/rc.d/init.d/mysql,把其中datadir=/var/lib/mysql一行中,等号右边的路径改成你现在的实际存放路径:home/data/mysql。 [root@test1 etc]# vi /etc/rc.d/init.d/mysql #datadir=/var/lib/mysql (注释此行) datadir=/home/data/mysql (加上此行) 7、重新启动MySQL服务 /etc/rc.d/init.d/mysql start 或用reboot命令重启Linux
以下是mysql数据目录修改出现 ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)错误的解决方案: 本例是将Mysql的数据目录移动到了/home/data/下,即mysql.sock所在的真实目录为,/home/data/mysql/mysql.sock ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2) mysql有tcp连接和socket连接方式,而上面这种错误一般是因为mysql是使用rpm方式安装的,它会自动寻找 /var/lib/mysql/mysql.sock 这个文件,是一种socket连接方式。 常见解决办法如下: 1、 创建/修改文件 /etc/my.cnf文件,在[mysqld]上面添加 [client] #password=your_password port=3306 socket=/home/data/mysql/mysql.sock #在这里写上你的mysql.sock的正确位置。 2、 指定IP地址,使用tcp方式连接mysql,而不使用本地socket方式 #mysql -h127.0.0.1 -uuser -ppassword 3、 为 mysql.sock 加个连接,比如说实际的mysql.sock在 /home/data/mysql/ 下,则 #ln -s /home/data/mysql/mysql.sock /var/lib/mysql/mysql.sock即可
*****************************如果是在unbuntu系统下用如下方法*********************** 关闭数据库服务 service mysql stop 建新数据库目录 mkdir /media/hda11/db 复制linux下原数据到新目录下 cp -pR /var/lib/mysql /media/hda11/db/ 修改文件/etc/apparmor.d/usr.sbin.mysqld gedit /etc/apparmor.d/usr.sbin.mysqld 把 /var/lib/mysql r, /var/lib/mysql/** rwk, 改成 /media/hda11/db/mysql r, /media/hda11/db/mysql/** rwk, 修改目录 gedit /etc/mysql/my.cnf 如 datadir = /var/lib/mysql换成datadir = /media/hda11/db/mysql 再开服务器 /etc/init.d/apparmor restart servcie mysql star
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
2014-07-13 启动和启动和停止MySQL服务停止MySQL服务
2014-07-13 Debian中完全卸载MySQL