MYSQL *
mysql_init(MYSQL *mysql)
          Allocates or initializes a MYSQL object
          suitable for
          mysql_real_connect(). If
          mysql is a NULL pointer,
          the function allocates, initializes, and returns a new object.
          Otherwise, the object is initialized and the address of the
          object is returned. If
          mysql_init() allocates a new
          object, it is freed when
          mysql_close() is called to
          close the connection.
        
          In a nonmultithreaded environment,
          mysql_init() invokes
          mysql_library_init()
          automatically as necessary. However,
          mysql_library_init() is not
          thread-safe in a multithreaded environment, and thus neither
          is mysql_init(). Before
          calling mysql_init(), either
          call mysql_library_init()
          prior to spawning any threads, or use a mutex to protect the
          mysql_library_init() call.
          This should be done prior to any other client library call.
        
          An initialized MYSQL* handler.
          NULL if there was insufficient memory to
          allocate a new object.