自己的服务器上的Nominatim API安装错误

时间:2012-05-18 05:57:34

标签: postgresql map centos openstreetmap nominatim

我在我自己的服务器上安装了nominatim for OSM map,其中包含此URL作为指南http://wiki.openstreetmap.org/wiki/Nominatim/Installation

当我执行以下命令将OSM db文件导入pgsql时: ./utils/setup.php --osm-file /usr/share/osmgeplanet/germany.osm.pbf --all

我收到了以下错误:

Create DB
Create DB (2)
string(19) "pgsql://@/nominatim"
object(DB_Error)#4 (8) {
  ["error_message_prefix"]=>
  string(0) ""
  ["mode"]=>
  int(1)
  ["level"]=>
  int(1024)
  ["code"]=>
  int(-25)
  ["message"]=>
  string(29) "DB Error: extension not found"
  ["userinfo"]=>
  string(55) " [DB Error: extension not found] ** pgsql://@/nominatim"
  ["backtrace"]=>
  array(7) {
    [0]=>
    array(6) {
      ["file"]=>
      string(25) "/usr/local/lib/php/DB.php"
      ["line"]=>
      int(966)
      ["function"]=>
      string(10) "PEAR_Error"
      ["class"]=>
      string(10) "PEAR_Error"
      ["type"]=>
      string(2) "->"
      ["args"]=>
      array(5) {
        [0]=>
        string(29) "DB Error: extension not found"
        [1]=>
        int(-25)
        [2]=>
        int(1)
        [3]=>
        int(1024)
        [4]=>
        string(32) " [DB Error: extension not found]"
      }
    }
    [1]=>
    array(7) {
      ["file"]=>
      string(21) "/usr/lib/php/PEAR.php"
      ["line"]=>
      int(531)
      ["function"]=>
      string(8) "DB_Error"
      ["class"]=>
      string(8) "DB_Error"
      ["object"]=>
      *RECURSION*
      ["type"]=>
      string(2) "->"
      ["args"]=>
      array(4) {
        [0]=>
        int(-25)
        [1]=>
        int(1)
        [2]=>
        int(1024)
        [3]=>
        string(32) " [DB Error: extension not found]"
      }
    }
    [2]=>
    array(7) {
      ["file"]=>
      string(32) "/usr/local/lib/php/DB/common.php"
      ["line"]=>
      int(1908)
      ["function"]=>
      string(10) "raiseError"
      ["class"]=>
      string(4) "PEAR"
      ["object"]=>
      object(DB_pgsql)#3 (28) {
        ["phptype"]=>
        string(5) "pgsql"
        ["dbsyntax"]=>
        string(5) "pgsql"
        ["features"]=>
        array(7) {
          ["limit"]=>
          string(5) "alter"
          ["new_link"]=>
          string(5) "4.3.0"
          ["numrows"]=>
          bool(true)
          ["pconnect"]=>
          bool(true)
          ["prepare"]=>
          bool(false)
          ["ssl"]=>
          bool(true)
          ["transactions"]=>
          bool(true)
        }
        ["errorcode_map"]=>
        array(0) {
        }
        ["connection"]=>
        NULL
        ["dsn"]=>
        array(0) {
        }
        ["autocommit"]=>
        bool(true)
        ["transaction_opcount"]=>
        int(0)
        ["affected"]=>
        int(0)
        ["row"]=>
        array(0) {
        }
        ["_num_rows"]=>
        array(0) {
        }
        ["fetchmode"]=>
        int(1)
        ["fetchmode_object_class"]=>
        string(8) "stdClass"
        ["was_connected"]=>
        NULL
        ["last_query"]=>
        string(0) ""
        ["options"]=>
        array(8) {
          ["result_buffering"]=>
          int(500)
          ["persistent"]=>
          bool(false)
          ["ssl"]=>
          bool(false)
          ["debug"]=>
          int(0)
          ["seqname_format"]=>
          string(6) "%s_seq"
          ["autofree"]=>
          bool(false)
          ["portability"]=>
          int(0)
          ["optimize"]=>
          string(11) "performance"
        }
        ["last_parameters"]=>
        array(0) {
        }
        ["prepare_tokens"]=>
        array(0) {
        }
        ["prepare_types"]=>
        array(0) {
        }
        ["prepared_queries"]=>
        array(0) {
        }
        ["_last_query_manip"]=>
        bool(false)
        ["_next_query_manip"]=>
        bool(false)
        ["_debug"]=>
        bool(false)
        ["_default_error_mode"]=>
        NULL
        ["_default_error_options"]=>
        NULL
        ["_default_error_handler"]=>
        string(0) ""
        ["_error_class"]=>
        string(8) "DB_Error"
        ["_expected_errors"]=>
        array(0) {
        }
      }
      ["type"]=>
      string(2) "->"
      ["args"]=>
      array(7) {
        [0]=>
        NULL
        [1]=>
        int(-25)
        [2]=>
        NULL
        [3]=>
        NULL
        [4]=>
        string(32) " [DB Error: extension not found]"
        [5]=>
        string(8) "DB_Error"
        [6]=>
        bool(true)
      }
    }
    [3]=>
    array(7) {
      ["file"]=>
      string(31) "/usr/local/lib/php/DB/pgsql.php"
      ["line"]=>
      int(212)
      ["function"]=>
      string(10) "raiseError"
      ["class"]=>
      string(9) "DB_common"
      ["object"]=>
      object(DB_pgsql)#3 (28) {
        ["phptype"]=>
        string(5) "pgsql"
        ["dbsyntax"]=>
        string(5) "pgsql"
        ["features"]=>
        array(7) {
          ["limit"]=>
          string(5) "alter"
          ["new_link"]=>
          string(5) "4.3.0"
          ["numrows"]=>
          bool(true)
          ["pconnect"]=>
          bool(true)
          ["prepare"]=>
          bool(false)
          ["ssl"]=>
          bool(true)
          ["transactions"]=>
          bool(true)
        }
        ["errorcode_map"]=>
        array(0) {
        }
        ["connection"]=>
        NULL
        ["dsn"]=>
        array(0) {
        }
        ["autocommit"]=>
        bool(true)
        ["transaction_opcount"]=>
        int(0)
        ["affected"]=>
        int(0)
        ["row"]=>
        array(0) {
        }
        ["_num_rows"]=>
        array(0) {
        }
        ["fetchmode"]=>
        int(1)
        ["fetchmode_object_class"]=>
        string(8) "stdClass"
        ["was_connected"]=>
        NULL
        ["last_query"]=>
        string(0) ""
        ["options"]=>
        array(8) {
          ["result_buffering"]=>
          int(500)
          ["persistent"]=>
          bool(false)
          ["ssl"]=>
          bool(false)
          ["debug"]=>
          int(0)
          ["seqname_format"]=>
          string(6) "%s_seq"
          ["autofree"]=>
          bool(false)
          ["portability"]=>
          int(0)
          ["optimize"]=>
          string(11) "performance"
        }
        ["last_parameters"]=>
        array(0) {
        }
        ["prepare_tokens"]=>
        array(0) {
        }
        ["prepare_types"]=>
        array(0) {
        }
        ["prepared_queries"]=>
        array(0) {
        }
        ["_last_query_manip"]=>
        bool(false)
        ["_next_query_manip"]=>
        bool(false)
        ["_debug"]=>
        bool(false)
        ["_default_error_mode"]=>
        NULL
        ["_default_error_options"]=>
        NULL
        ["_default_error_handler"]=>
        string(0) ""
        ["_error_class"]=>
        string(8) "DB_Error"
        ["_expected_errors"]=>
        array(0) {
        }
      }
      ["type"]=>
      string(2) "->"
      ["args"]=>
      array(1) {
        [0]=>
        int(-25)
      }
    }
    [4]=>
    array(7) {
      ["file"]=>
      string(25) "/usr/local/lib/php/DB.php"
      ["line"]=>
      int(556)
      ["function"]=>
      string(7) "connect"
      ["class"]=>
      string(8) "DB_pgsql"
      ["object"]=>
      object(DB_pgsql)#3 (28) {
        ["phptype"]=>
        string(5) "pgsql"
        ["dbsyntax"]=>
        string(5) "pgsql"
        ["features"]=>
        array(7) {
          ["limit"]=>
          string(5) "alter"
          ["new_link"]=>
          string(5) "4.3.0"
          ["numrows"]=>
          bool(true)
          ["pconnect"]=>
          bool(true)
          ["prepare"]=>
          bool(false)
          ["ssl"]=>
          bool(true)
          ["transactions"]=>
          bool(true)
        }
        ["errorcode_map"]=>
        array(0) {
        }
        ["connection"]=>
        NULL
        ["dsn"]=>
        array(0) {
        }
        ["autocommit"]=>
        bool(true)
        ["transaction_opcount"]=>
        int(0)
        ["affected"]=>
        int(0)
        ["row"]=>
        array(0) {
        }
        ["_num_rows"]=>
        array(0) {
        }
        ["fetchmode"]=>
        int(1)
        ["fetchmode_object_class"]=>
        string(8) "stdClass"
        ["was_connected"]=>
        NULL
        ["last_query"]=>
        string(0) ""
        ["options"]=>
        array(8) {
          ["result_buffering"]=>
          int(500)
          ["persistent"]=>
          bool(false)
          ["ssl"]=>
          bool(false)
          ["debug"]=>
          int(0)
          ["seqname_format"]=>
          string(6) "%s_seq"
          ["autofree"]=>
          bool(false)
          ["portability"]=>
          int(0)
          ["optimize"]=>
          string(11) "performance"
        }
        ["last_parameters"]=>
        array(0) {
        }
        ["prepare_tokens"]=>
        array(0) {
        }
        ["prepare_types"]=>
        array(0) {
        }
        ["prepared_queries"]=>
        array(0) {
        }
        ["_last_query_manip"]=>
        bool(false)
        ["_next_query_manip"]=>
        bool(false)
        ["_debug"]=>
        bool(false)
        ["_default_error_mode"]=>
        NULL
        ["_default_error_options"]=>
        NULL
        ["_default_error_handler"]=>
        string(0) ""
        ["_error_class"]=>
        string(8) "DB_Error"
        ["_expected_errors"]=>
        array(0) {
        }
      }
      ["type"]=>
      string(2) "->"
      ["args"]=>
      array(2) {
        [0]=>
        array(9) {
          ["phptype"]=>
          string(5) "pgsql"
          ["dbsyntax"]=>
          string(5) "pgsql"
          ["username"]=>
          string(0) ""
          ["password"]=>
          bool(false)
          ["protocol"]=>
          string(3) "tcp"
          ["hostspec"]=>
          string(0) ""
          ["port"]=>
          bool(false)
          ["socket"]=>
          bool(false)
          ["database"]=>
          string(9) "nominatim"
        }
        [1]=>
        bool(false)
      }
    }
    [5]=>
    array(6) {
      ["file"]=>
      string(47) "/home/nominati/public_html/Nominatim/lib/db.php"
      ["line"]=>
      int(7)
      ["function"]=>
      string(7) "connect"
      ["class"]=>
      string(2) "DB"
      ["type"]=>
      string(2) "::"
      ["args"]=>
      array(2) {
        [0]=>
        string(19) "pgsql://@/nominatim"
        [1]=>
        bool(false)
      }
    }
    [6]=>
    array(4) {
      ["file"]=>
      string(52) "/home/nominati/public_html/Nominatim/utils/setup.php"
      ["line"]=>
      int(94)
      ["function"]=>
      string(5) "getDB"
      ["args"]=>
      array(0) {
      }
    }
  }
  ["callback"]=>
  NULL
}
DB Error: extension not found

对此有何解决方案?

2 个答案:

答案 0 :(得分:2)

首先安装pgsql及相关工具,而不是导入应该正常工作

答案 1 :(得分:0)

对我而言,这是行

 ;extension=pgsql.so

在php.ini中取消注释。