Rozpoczęliśmy nowy projekt, który wykorzystuje marklogic do przechowywania dokumentów. Aby uruchomić aplikację, musimy utworzyć bazę danych, las, nowych użytkowników i skonfigurować serwer XDBC. Łatwo to zrobić za pomocą narzędzia administracyjnego dostępnego w Marklogic, ale aby uruchomić go z serwera ciągłej integracji, musimy go zautomatyzować. Czy jest jakiś sposób to zrobić z wiersza polecenia (jak sqlcmd.exe dla sqlserver lub sql plus w Oracle)?Jak utworzyć bazę danych w marklogic ze skryptu
Odpowiedz
Dopóki używasz MarkLogic 5.x, najłatwiej jest użyć programu Configuration Manager. To internetowe narzędzie pozwala wyeksportować całą konfigurację serwera DB i serwera aplikacji do pojedynczego pliku xml, który może być kontrolowany w wersji. Można go również zaimportować, aby całkowicie skonfigurować lub ponownie skonfigurować instancję MarkLogic.
Aby użyć tego jako części ciągłej integracji, należy wykonać skrypt importu konfiguracji. Można utworzyć serwer http, który ma jeden punkt końcowy, który wywołuje interfejs API konfiguracji do ładowania, jako documente tutaj: http://community.marklogic.com/pubs/5.0/apidocs/package-api.html. Ta usługa oparta na protokole https może być łatwo wywoływana za pośrednictwem ANT lub dowolnego innego narzędzia CI.
Alternatywnie, szczególnie jeśli nie korzystasz jeszcze z wersji 5.x, możesz skryptować cały proces zamiast używać pakietu konfiguracyjnego. Wszystkie zadania administracyjne są udokumentowane tutaj: http://community.marklogic.com/pubs/5.0/books/adminAPI.pdf. Następnie należy napisać cały kod niezbędny do skonfigurowania bazy danych, serwerów aplikacji itp., A następnie udostępnić go za pośrednictwem serwera http, jak opisano powyżej.
Dzięki pomocy Clark Richey, mógłbym znaleźć sposób na automatyzację konfiguracji serwera MarkLogic 5.x (choć w żadnym wypadku nie jest to proste).
Na przykład, jeśli chcesz zautomatyzować tworzenie serwera xdbc, Przejdź do konsoli zapytań instancji, w której istnieje ręcznie skonfigurowany serwer xdbc. Użyj następującego xquery do wygenerowania pliku pakietu dla serwera xdbc (w moim przypadek zwany próbnym serwerem).
pakiet nazw modułu importu package = "http://marklogic.com/package/package" at "/MarkLogic/package/package.xqy";
Niech $ my-pakiet: = Pakiet: create()
pakietzwrot: dodatek appserver ($ my-pakiet, "Default", "próbka-server")
byś teraz zobacz pakiet xml, który zawiera wszystkie informacje potrzebne do utworzenia i skonfigurowania serwera xdbc. Zapisz to w pliku lub w schowku. Teraz przejdź do konsoli zapytań instancji marklogic, którą chcesz skonfigurować. Użyj następującej xquery, aby faktycznie zainstalować ją na instancji.
pakiet nazw modułu importu package = "http://marklogic.com/package/package" at "/MarkLogic/package/package.xqy";
let $ pakiet: = {wklej xml pakiet zapisany w pliku/schowek STEP1}
pakietzwrot: zainstalować ($ pakiet)
Będziesz teraz uzyskać wynik XML, który mówi że pakiet został napisany.
Teraz dla wszystkich ważnych krok automatyzacji tego w moim środowisku CI.Napisałbym niestandardowe zadanie ant/nant (lub w moim konkretnym przypadku cmdlet powershell), który odczytuje plik konfiguracyjny z systemu plików, łączy się z ML przy użyciu XCC (i poświadczeń administracyjnych, ponieważ rzeczy takie jak tworzenie baz danych i serwerów aplikacji potrzebują tego), a następnie wykonuje to samo zdefiniowane powyżej xquery. Mogę wtedy kontrolować plik konfiguracyjny w moim kontrolerze źródłowym iw ten sposób mogę zautomatyzować tworzenie/konfigurację baz danych na świeżej instalacji ML bez jakiejkolwiek ręcznej interwencji. Jakieś inne lepsze sposoby robienia tego?
Tak więc, wiesz, istnieje zestaw mrówek dla MarkLogic na github http: // developer .marklogic.com/code/ant-tasks – derickson
Aplikacja do zarządzania konfiguracją zapewnia również interfejs REST opakowania. Jest URL do POST-owania pakietu do instalacji. Więcej szczegółów tutaj: http://community.marklogic.com/pubs/5.0/apidocs/packageREST.html – grtjn
- 1. Jak utworzyć bazę danych ELMAH SQL Server?
- 2. Jak utworzyć bazę danych ze schematu.rb bez inicjowania Railsów?
- 3. Jak utworzyć własną bazę danych w Redis?
- 4. Jak programowo utworzyć bazę danych sqlite?
- 5. Jak utworzyć zieloną bazę danych DAO w kolorze zielonym DAO
- 6. Jak utworzyć bazę danych localhost za pomocą mysql?
- 7. Jak utworzyć bazę danych właściwości publicznej w Xaml
- 8. Jak utworzyć lokalną bazę danych w Microsoft SQL Server 2014?
- 9. SQL Kiedy utworzyć nową bazę danych?
- 10. Laravel utworzyć bazę danych podczas testowania
- 11. Czy mysql może utworzyć rozproszoną bazę danych?
- 12. Jak mogę wyjść ze skryptu nodeJS z poziomu skryptu?
- 13. Relacje danych jako kontekst wyszukiwania w Marklogic
- 14. Jak utworzyć bazę danych dla wielu dzierżawców ze współdzielonymi strukturami tabel?
- 15. Jak utworzyć nową bazę danych Firebird z wiersza poleceń?
- 16. Jak utworzyć bazę danych mysql db z komponentem Docker?
- 17. Jak utworzyć nową bazę danych z zainstalowanym rozszerzeniem hstore?
- 18. Zaktualizuj bazę danych ze zmianami wprowadzonymi w DataTable ... zamieszanie
- 19. Jak utworzyć nową bazę danych za pomocą SQLAlchemy?
- 20. Jak mogę utworzyć bazę danych przy użyciu pymssql
- 21. Jak utworzyć bazę danych SQL z Linq2Sql Model
- 22. Jak stworzyć bazę danych w doktrynie 2
- 23. Jak zaimplementować bazę danych w aplikacji PhoneGap?
- 24. Utwórz bazę danych SQLite w Androidzie
- 25. Jak korzystać ze skryptu PHP w TCPDF?
- 26. Heroku - Jak zaszyfrować bazę danych?
- 27. jak zmniejszyć bazę danych sqlite?
- 28. Jak zrzucić bazę danych mysql?
- 29. Jak odkurzać bazę danych sqlite?
- 30. Czy można utworzyć relacyjną bazę danych przy użyciu MongoDB?
Dzięki za link. używamy 5.x. Na początek próbowałem zaimportować serwer aplikacji do xml i otrzymałem pakiet xml. Następnym krokiem było zainstalowanie pakietu. Użyłem pakietu: install (fn: doc ("/ xdbcserver.xml")) ..... Problem polega na tym, że plik z plikiem uri /xdbcserver.xml powinien znajdować się w bazie danych. Oznacza to, że ktoś musi ręcznie ją tam umieścić. Jest to sprzeczne z celem automatyzacji konfiguracji. Chciałbym funkcji, która ładuje pakiet z systemu plików klienta zamiast istniejącego dokumentu w DB. Any wskazówki? Jeszcze raz dziękuję – uttamkini