我有一个40mb的数据库文件,是从旧主机导出的,需要将其导入新域上的新主机。我通常在代码编辑器中打开数据库并找到replace,但由于这个文件太大,它冻结了我的编辑器。
是否有办法通过终端/命令行执行此操作?我看到了一些关于使用sed
搜索时,但我无法了解它是如何工作的。是否已有一个简单的命令来执行此操作?我试过这个,但不起作用:
sed \'s/http:\\/\\/www.domain.com/http:\\/\\/www.newdomain.com/g\' mydatabase.sql
谢谢你的指点。
Osu
最合适的回答,由SO网友:Fabien Quatravaux 整理而成
您不应该使用此技术更改站点的URL:WordPress有时会将URL存储在序列化字符串中。查找/替换将损坏序列化数据并丢弃整个内容。
您可以使用interconnect/it search and replace tool 无任何风险地更改域。这个工具甚至允许您运行一个干测试来检查要修改的内容。
如果您喜欢sed
技巧,您应该转义在正则表达式中具有特殊含义的所有特殊字符,如点:
sed \'s|http://www\\.domain\\.com|http://www\\.newdomain\\.com|g\' mydatabase.sql