openldap 备份与导入 及相关问题
摘要:
对openldap进行备份时,直接使用slapcat命令进行备份,使用ldapadd还原出现问题及解决。
介绍:
对openldap进行备份时,直接使用slapcat命令进行备份(如代码一),然后使用ldapadd还原会出现以下报错信息:
ldap_add: Constraint violation (10)
additional info: structuralObjectClass: no user modification allowed
#代码一:
slapcat -v -l ldapbackup.ldif
分析原因:slapcat备份出来的ldapback.ldif中有系统自动生成的系统信息不能导入需要清除
解决方案:清除ldapback.ldif中的系统信息
步骤:
1、新建过滤正则表达式slapcat.regex
cat >slapcat.regex <<EOF
/^creatorsName: /d
/^createTimestamp: /d
/^modifiersName: /d
/^modifyTimestamp: /d
/^structuralObjectClass: /d
/^entryUUID: /d
/^entryCSN: /d
EOF
2、过滤掉系统信息
cat ldapback.ldif | sed -f slapcat.regex > slapdata.ldif
3、使用ldapadd导入
ldapadd -H ldap://127.0.0.1 -x -D "用户" -f slapdata.ldif -w 密码
#或 服务器程序导入 初始使用可能失败
#slapadd -l slapdate.ldif
备份方案二:
ldapsearch -x -b 'dc=com,dc=cn' > ldapbackup.ldif
其他方案:
[方法1]
关闭:kill -INT `cat /var/run/slapd.pid`
启动:/usr/sbin/slapd
备份:/usr/sbin/slapcat>mail_ldap.ldif
导入:ldapadd -x -D "cn=Manager,dc=domain,dc=com" -w secret -v -f mail_ldap.ldif
关闭模式导入:
slapadd -l mail_ldap.ldif -f /etc/openldap/sladp.conf
[方法2]
系统突然掉电或重启引起LDAP数据库意外关闭造成的。
进入ldap数据目录(/openldap/var/openldap-data),执行db_recover,再启动服务.
/var/lib/ldap slapd db_recover
参考:
[1] linewer.Ldap相关问题小结.http://blog.chinaunix.net/uid-10328574-id-2951045.html.2013-10-08
[2] shrekmu.手工备份恢复Openldap数据库.http://blog.csdn.net/shrekmu/article/details/1266361.2013-10-08
[3] nonnie.OpenLDAP的手工备份与恢复.http://blog.163.com/nonnie@126/blog/static/57630308201091194938915/.2013-10-08
openldap 备份与导入 及相关问题的更多相关文章
- 【转载】openldap 备份与导入 及相关问题--扩展
http://www.cnblogs.com/ccdc/p/3356518.html 摘要: 对openldap进行备份时,直接使用slapcat命令进行备份,使用ldapadd还原出现问题及解决. ...
- MongoDB系列----备份与导入导出
参考: http://my.oschina.net/xiaomaoandhong/blog/63471,<> 1.停掉服务器 然后备份 Mongodb将所有数据都存放在"数据目录 ...
- FastAdmin 导入 Excel 相关资料收集 (2018-08-14)
FastAdmin 导入 Excel 相关资料收集 新版本一键CRUD后自带导入功能,但是默认被禁用,如何启动 https://forum.fastadmin.net/thread/540 Excel ...
- 备份和导入Outlook 2016 电子邮件签名
在本文中,我将分享您在Outlook 2013和Outlook 2016中备份或导入签名的过程 在清除Outlook配置文件之前,请确保您通过在文件资源管理器中的配置文件中的APPDATA文件夹中复制 ...
- linux 简单的mysql备份和导入,以及文件的备份和导入
一,数据库的备份与导入 1),数据库的备份 1.导出整个数据库 mysqldump -u 用户名 -p 数据库名 > 导出的文件名 例:mysqldump -u dbadmin -p myblo ...
- 云服务器 ECS Linux 系统 MySQL 备份的导入导出
MySQL 备份的导出 注意: 如果您使用的是帮助中心的一键环境配置,那么 MySQL 的安装目录是 /alidata/server/mysql. 如果您将 MySQL 安装到其他目录,您需要输入您 ...
- 使用PL/SQL连接oracle数据库,并将数据进行导出备份和导入恢复
使用PL/SQL连接oracle数据库,并将数据进行导出备份和导入恢复 这种操作百度一搜一大片,今天整理以前做的项目时自己备份了一下数据库,试着将数据进行导出备份和导入恢复了一下:下面是操作过程: 1 ...
- win10安装mysql过程&&链接过程&&备份和导入数据&&grant命令
win10安装mysql过程&&链接过程&&备份和导入数据&&grant命令 一 .安装 一开始在mysql官网(https://www.mysql ...
- DDL:对数据库___database___的相关操作,包含数据库备份,导入
1.创建数据库 create database mydb2; create database mydb2 character set utf8; 2.删除数据库 drop database mydb2 ...
随机推荐
- hmac库 密钥相关的哈希运算消息认证码
# -*- coding: cp936 -*- #xiaodeng #python 2.7.10 #HMAC是密钥相关的哈希运算消息认证码,HMAC运算利用哈希算法,以一个密钥和一个消息为输入,生成一 ...
- JavaScript中的继承与原型链
先看一个例子 function User(){} var u1 = new User(); console.log(u1.prototype);// undefined 使用对象实例无法访问到prot ...
- HDUOJ--------(1198)Farm Irrigation
Farm Irrigation Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) ...
- 【C++】const成员函数
形式: 在成员函数后面加上const限定词,表示不会修改对象内容. 例如Circle类: class Circle { double r; public: Circle(double newr) { ...
- POJ 2965 The Pilots Brothers' refrigerator (DFS)
The Pilots Brothers' refrigerator Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 15136 ...
- iOS - CodeReview 代码评审
1.CodeReview Code Review 中文应该译作 "代码审查" 或是 "代码评审",这是一个流程,当开发人员写好代码后,需要让别人来 review ...
- Python学习笔记——与爬虫相关的网络知识
1 关于URL URL(Uniform / Universal Resource Locator):统一资源定位符,用于完整地描述Internet上网页和其他资源的地址的一种标识方法 URL是爬虫的入 ...
- python练习笔记——编写一个装饰器,模拟登录的简单验证
编写一个装饰器,模拟登录的简单验证(至验证用户名和密码是否正确) 如果用户名为 root 密码为 123则正确,否则不正确.如果验证不通过则不执行被修饰函数 #编写一个装饰器,模拟登录的简单验证 #只 ...
- Qt WebView改造成 QML App
这是去年的一个项目,虽然研究出来了,解了一时之需,但随后束之高阁.当时Qt的版本是4.8.现在整理如下: 把QT HTML5 APP改造成 QML App 方案 新建一个QML自定义控件,该控件包含Q ...
- iOS8开发之iOS8的UIAlertController
在iOS8之前用UIActionSheet和UIAlertView来提供button选择和提示性信息,比方UIActionSheet能够这样写: UIActionSheet *actionSheet ...