[Date Prev][Date Next] [Chronological] [Thread] [Top]

RE: Ndb-backend questions...

Thanks Howard. I included some additional questions in the original message:


-----Original Message-----
From: Howard Chu [mailto:hyc@symas.com] 
Sent: Thursday, July 16, 2009 4:51 PM
To: Reinhard Nappert
Cc: openldap-software@openldap.org
Subject: Re: Ndb-backend questions...

Reinhard Nappert wrote:
> Hi,
> I try to get openldap 2.4.16 running with the MySQL Cluster 7.0.6 as 
> backend. Is there a documentation available, how to configure openldap 
> and my-sql? Specifically, I want to know if I can define more than one 
> suffix, which point to different databases (multiple suffix and dbname 
> directives). If so, how to I associate a suffix with the desired database.

Define a separate database per suffix.
RN: So, I assume you would have multiple db-blocks in your slapd.conf. Something like:
rootdn          "cn=admin, o=suffix1"
rootpw  secret
dbconnect hostA
dbhost hostA
dbsocket /tmp/mysql.sock
dbuser mysql
dbpass mysql
dbconnections 1

suffix          "o=suffix1"
dbname DB1

suffix          "o=suffix2"
Dbname DB2

> Secondly, I got the connection with one suffix to work, but it looked 
> like I have to start the mysql server as well. I thought that the 
> backend-ndb talks directly ndb api.

The startup uses mysql queries to generate the OpenLDAP-specific tables. It is required to generate them this way (using SQL instead of NDBapi) so that any mysql daemons participating in the cluster will be informed. (Table manipulations done directly in NDBapi will not be visible to the mysql daemons.)

> Thirdly, as far as I know, the backend-ndb also allows you to read 
> existing sql tables from the cluster. How does this work and how do 
> you configure this. So far, I am not able to do that.

No, you cannot run directly on existing tables. The OpenLDAP-specific columns need to be added to them. Generally you need to export all of the data to plaintext, convert to LDIF format, and then reimport to get the tables constructed as necessary. The newly created tables will then have the original column definitions (so existing apps can continue to use them) plus the OpenLDAP columns.

RN: This said, it would also require to have LDAP - MySQL schema mapping in place, right? This would be done manually as well, I assume?

> Thanks for any pointers.
> -Reinhard

   -- Howard Chu
   CTO, Symas Corp.           http://www.symas.com
   Director, Highland Sun     http://highlandsun.com/hyc/
   Chief Architect, OpenLDAP  http://www.openldap.org/project/