**************RT************************本人现在在嵌入式系统中有一个SQLite数据库,在另外一台服务器中有mysql,如果SQLite中的数据有修改或者建立了新表新元素,有没有一种可用的方法让mysql中同样有相同的操作?还是需要自己来处理这种情况?如果是后者,应该采用何种方法比较合适呢?  本人对具体数据库的操作不是非常熟悉,希望大虾们多给点宝贵意见参考~~谢谢!

解决方案 »

  1.   

    不能,只能分别写SQL语句(代码)
      

  2.   

    我没有分值发帖了,站在巨人的肩膀上发个帖子,别介意。
    问题:
    bin> ndbd --initial
    Unable to connect with connect string: nodeid=0,localhost:1186
    Retrying every 5 seconds. Attempts left: 12 11 10 9 8 7 6 5 4 3 2 1, failed.
    2010-12-07 17:04:22 [ndbd] ERROR -- Could not connect to management server, e
    rror: ''我下载了mysql-cluster-gpl-noinstall-7.1.9a-win32免安装版做mysql cluster,在启动数据节点时出现了无法连接的情况:
    bin> ndbd --initial
    Unable to connect with connect string: nodeid=0,localhost:1186
    Retrying every 5 seconds. Attempts left: 12 11 10 9 8 7 6 5 4 3 2 1, failed.
    2010-12-07 17:04:22 [ndbd] ERROR -- Could not connect to management server, e
    rror: ''我的过程是这样的:
    (1) 管理节点的配置    创建文件夹:c:\mysql
                    c:\mysql\bin  (并将 ndb_mgmd.exe 和 ndb_mgm.exe 复制进去)
                    c:\mysql\bin\cluster-logs
        在 c:\mysql\bin 下创建两个文件 conf.ini、my.ini config.ini配置如下:[ndbd default]
    NoOfReplicas=2
    DataMemory=200M
    IndexMemory=100M[TCP DEFAULT][NDB_MGMD]
    nodeid=1
    hostname=172.16.3.27
    datadir=D:\Program Files\mysqlcluster\datanode\mysql\bin\cluster-data[NDBD]
    nodeid=2
    hostname=172.16.3.28
    datadir=C:\mysql\mysql-cluster[NDBD]
    nodeid=3
    hostname=172.16.3.30
    datadir=C:\mysql\mysql-cluster[MySQLD]
    [MySQLD]my.ini配置如下:[mysql_cluster]
    config-file=C:\mysql\bin\config.ini(2)数据节点和sql节点的配置(数据节点和sql节点为同一台机)
        建文件夹: D:/Program Files/mysqlcluster/datanode/mysql/bin (并将ndbd.exe放进去)
                   D:/Program Files/mysqlcluster/datanode/mysql/cluster-data
                   D:/Program Files/mysqlcluster/datanode/mysql/bin/cluster-data
                   D:/Program Files/mysqlcluster/sqlnode (将解压后的整个文件夹mysql放进去)    在D:/Program Files/mysqlcluster/datanode/mysql/bin目录下生成文件my.ini,内容为:    [mysql_cluster]
         ndb-connectstring=172.16.3.27    在D:/Program Files/mysqlcluster/sqlnode/mysql下生成my.ini文件,内容为:
        [mysqld]
         ndbcluster
         ndb-connectstring=172.16.3.27(3)启动管理节点
    c:\mysql\bin>ndb_mgmd -f conf.ini
    MySQL Cluster Management Server mysql-5.1.51 ndb-7.1.9c:\mysql\bin>ndb_mgm -e show
    Connected to Management Server at: localhost:1186
    Cluster Configuration
    ---------------------
    [ndbd(NDB)]     2 node(s)
    id=2 (not connected, accepting connect from 172.16.3.28)
    id=3 (not connected, accepting connect from 172.16.3.30)[ndb_mgmd(MGM)] 1 node(s)
    id=1    @172.16.3.27  (mysql-5.1.51 ndb-7.1.9)[mysqld(API)]   3 node(s)
    id=4 (not connected, accepting connect from any host)
    id=5 (not connected, accepting connect from any host)(4) 启动数据节点
    D:\Program Files\mysqlcluster\datanode\mysql\bin>ndbd  --initial
    Unable to connect with connect string: nodeid=0,localhost:1186
    Retrying every 5 seconds. Attempts left: 12 11 10数据节点连接不上,在管理节点上运行ndb_mgm
    c:\mysql\bin>ndb_mgm
    -- NDB Cluster -- Management Client --
    ndb_mgm> show
    Connected to Management Server at: localhost:1186
    Cluster Configuration
    ---------------------
    [ndbd(NDB)]     2 node(s)
    id=2 (not connected, accepting connect from 172.16.3.28)
    id=3 (not connected, accepting connect from 172.16.3.30)[ndb_mgmd(MGM)] 1 node(s)
    id=1    @172.16.3.27  (mysql-5.1.51 ndb-7.1.9)[mysqld(API)]   3 node(s)
    id=4 (not connected, accepting connect from any host)
    id=5 (not connected, accepting connect from any host)
    id=6 (not connected, accepting connect from any host)ndb_mgm> connect 172.16.3.28
    Unable to connect with connect string: nodeid=0,172.16.3.28:1186
    Retrying every 5 seconds. Attempts left: 2管理节点和数据节点互相 connect 不上  (防火墙关了,终端互相ping通)望高手指点!
      

  3.   

    意思是,如果有修改或者建表等,在web server中同时对两个数据库做同样的操作?
      

  4.   


    对本地数据库的操作都是通过嵌入式的web server来做的,那同步模块应该放在哪里执行呢?
      

  5.   

    你这样的使用场景, 不用定时执行。
    每一次本地操作,发一个远程的mysql请求,执行相同的逻辑。这样也许会简单一些。
    你的本地操作在哪里执行,那附加动作就在哪里执行。
      

  6.   

    你的启动顺序对吗   管理机,ndb,sql
      

  7.   


    我先起得管理机:
    c:\mysql\bin>ndb_mgmd -f conf.ini
    MySQL Cluster Management Server mysql-5.1.51 ndb-7.1.9c:\mysql\bin>ndb_mgm -e show
    Connected to Management Server at: localhost:1186
    Cluster Configuration
    ---------------------
    [ndbd(NDB)] 2 node(s)
    id=2 (not connected, accepting connect from 172.16.3.28)
    id=3 (not connected, accepting connect from 172.16.3.30)[ndb_mgmd(MGM)] 1 node(s)
    id=1 @172.16.3.27 (mysql-5.1.51 ndb-7.1.9)[mysqld(API)] 3 node(s)
    id=4 (not connected, accepting connect from any host)
    id=5 (not connected, accepting connect from any host)然后起ndb:
    D:\Program Files\mysqlcluster\datanode\mysql\bin>ndbd --initial
    Unable to connect with connect string: nodeid=0,localhost:1186
    Retrying every 5 seconds. Attempts left: 12 11 10连不上,sql我就没起了
      

  8.   


    你对appweb了解不?这个嵌入式web  server对SQLite提供完整的数据映射,调用内部类可以很方便的支持对SQLite的操作,对远程的mysql可以用标准的SQL接口吗?
      

  9.   


    我不了解你这个web server里边用的是什么编程接口来访问Sqlite,只要是远程访问,总有办法能访问mysql,标准接口,由于是异机,估计够呛。