create a remote external tables












0














I have the following infrastructure:



Local machine with Windows OS, named A, with Oracle 12c installed.
Remote machine with Windows OS, named B, mapped into machine A.



I am trying to create an external table on B, "AS SELECT" from an internal table from Oracle (machine A).



For this:





  1. I created a directory in Oracle:



    create or replace directory external_test_dir as 'h:external_test_dir';




  2. I created an internal tabel in Oracle:



    create table TEST_INT (id number, text varchar2(100));




  3. Insert values in TEST_INT table:



    insert into TEST_INT values (1, 'test 1');



    insert into TEST_INT values (2, 'test 2');



  4. Try to create the external table TEST_EXT as select from TEST_INT table on a remote location.



And I receive the following error message:



Error starting at line 58 in command:
create table TEST_EXT
organization external
(
type ORACLE_DATAPUMP
default directory EXTERNAL_TEST_DIR
location ('TEST_EXT_FILE.csv')
)
parallel 2
as
select *
from TEST_INT
Error at Command Line:58 Column:1
Error report:
SQL Error: ORA-29913: error in executing ODCIEXTTABLEOPEN callout
ORA-29400: data cartridge error
KUP-04001: error opening file h:external_test_dirTEST_EXT_2480_11532.log
29913. 00000 - "error in executing %s callout"
*Cause: The execution of the specified callout caused an error.
*Action: Examine the error messages take appropriate action.


Can anyone tell me what should I do to solve this error, please?



PS: I tried same example with an external table on same machine with DB Server and it works just fine.



Thanks,










share|improve this question



























    0














    I have the following infrastructure:



    Local machine with Windows OS, named A, with Oracle 12c installed.
    Remote machine with Windows OS, named B, mapped into machine A.



    I am trying to create an external table on B, "AS SELECT" from an internal table from Oracle (machine A).



    For this:





    1. I created a directory in Oracle:



      create or replace directory external_test_dir as 'h:external_test_dir';




    2. I created an internal tabel in Oracle:



      create table TEST_INT (id number, text varchar2(100));




    3. Insert values in TEST_INT table:



      insert into TEST_INT values (1, 'test 1');



      insert into TEST_INT values (2, 'test 2');



    4. Try to create the external table TEST_EXT as select from TEST_INT table on a remote location.



    And I receive the following error message:



    Error starting at line 58 in command:
    create table TEST_EXT
    organization external
    (
    type ORACLE_DATAPUMP
    default directory EXTERNAL_TEST_DIR
    location ('TEST_EXT_FILE.csv')
    )
    parallel 2
    as
    select *
    from TEST_INT
    Error at Command Line:58 Column:1
    Error report:
    SQL Error: ORA-29913: error in executing ODCIEXTTABLEOPEN callout
    ORA-29400: data cartridge error
    KUP-04001: error opening file h:external_test_dirTEST_EXT_2480_11532.log
    29913. 00000 - "error in executing %s callout"
    *Cause: The execution of the specified callout caused an error.
    *Action: Examine the error messages take appropriate action.


    Can anyone tell me what should I do to solve this error, please?



    PS: I tried same example with an external table on same machine with DB Server and it works just fine.



    Thanks,










    share|improve this question

























      0












      0








      0







      I have the following infrastructure:



      Local machine with Windows OS, named A, with Oracle 12c installed.
      Remote machine with Windows OS, named B, mapped into machine A.



      I am trying to create an external table on B, "AS SELECT" from an internal table from Oracle (machine A).



      For this:





      1. I created a directory in Oracle:



        create or replace directory external_test_dir as 'h:external_test_dir';




      2. I created an internal tabel in Oracle:



        create table TEST_INT (id number, text varchar2(100));




      3. Insert values in TEST_INT table:



        insert into TEST_INT values (1, 'test 1');



        insert into TEST_INT values (2, 'test 2');



      4. Try to create the external table TEST_EXT as select from TEST_INT table on a remote location.



      And I receive the following error message:



      Error starting at line 58 in command:
      create table TEST_EXT
      organization external
      (
      type ORACLE_DATAPUMP
      default directory EXTERNAL_TEST_DIR
      location ('TEST_EXT_FILE.csv')
      )
      parallel 2
      as
      select *
      from TEST_INT
      Error at Command Line:58 Column:1
      Error report:
      SQL Error: ORA-29913: error in executing ODCIEXTTABLEOPEN callout
      ORA-29400: data cartridge error
      KUP-04001: error opening file h:external_test_dirTEST_EXT_2480_11532.log
      29913. 00000 - "error in executing %s callout"
      *Cause: The execution of the specified callout caused an error.
      *Action: Examine the error messages take appropriate action.


      Can anyone tell me what should I do to solve this error, please?



      PS: I tried same example with an external table on same machine with DB Server and it works just fine.



      Thanks,










      share|improve this question













      I have the following infrastructure:



      Local machine with Windows OS, named A, with Oracle 12c installed.
      Remote machine with Windows OS, named B, mapped into machine A.



      I am trying to create an external table on B, "AS SELECT" from an internal table from Oracle (machine A).



      For this:





      1. I created a directory in Oracle:



        create or replace directory external_test_dir as 'h:external_test_dir';




      2. I created an internal tabel in Oracle:



        create table TEST_INT (id number, text varchar2(100));




      3. Insert values in TEST_INT table:



        insert into TEST_INT values (1, 'test 1');



        insert into TEST_INT values (2, 'test 2');



      4. Try to create the external table TEST_EXT as select from TEST_INT table on a remote location.



      And I receive the following error message:



      Error starting at line 58 in command:
      create table TEST_EXT
      organization external
      (
      type ORACLE_DATAPUMP
      default directory EXTERNAL_TEST_DIR
      location ('TEST_EXT_FILE.csv')
      )
      parallel 2
      as
      select *
      from TEST_INT
      Error at Command Line:58 Column:1
      Error report:
      SQL Error: ORA-29913: error in executing ODCIEXTTABLEOPEN callout
      ORA-29400: data cartridge error
      KUP-04001: error opening file h:external_test_dirTEST_EXT_2480_11532.log
      29913. 00000 - "error in executing %s callout"
      *Cause: The execution of the specified callout caused an error.
      *Action: Examine the error messages take appropriate action.


      Can anyone tell me what should I do to solve this error, please?



      PS: I tried same example with an external table on same machine with DB Server and it works just fine.



      Thanks,







      sql oracle remote-access external-tables






      share|improve this question













      share|improve this question











      share|improve this question




      share|improve this question










      asked Nov 20 at 13:24









      mikcutu

      4121416




      4121416
























          1 Answer
          1






          active

          oldest

          votes


















          1














          You need to make sure Oracle has read/write access to EXTERNAL_TEST_DIR because it has to be able to write out a log to that same directory. Refer to this link for more details.






          share|improve this answer





















          • To expand upon @dcp's answer, the files that make up the external table need to be "visible" to the database server.
            – BobC
            Nov 21 at 4:54











          Your Answer






          StackExchange.ifUsing("editor", function () {
          StackExchange.using("externalEditor", function () {
          StackExchange.using("snippets", function () {
          StackExchange.snippets.init();
          });
          });
          }, "code-snippets");

          StackExchange.ready(function() {
          var channelOptions = {
          tags: "".split(" "),
          id: "1"
          };
          initTagRenderer("".split(" "), "".split(" "), channelOptions);

          StackExchange.using("externalEditor", function() {
          // Have to fire editor after snippets, if snippets enabled
          if (StackExchange.settings.snippets.snippetsEnabled) {
          StackExchange.using("snippets", function() {
          createEditor();
          });
          }
          else {
          createEditor();
          }
          });

          function createEditor() {
          StackExchange.prepareEditor({
          heartbeatType: 'answer',
          autoActivateHeartbeat: false,
          convertImagesToLinks: true,
          noModals: true,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: 10,
          bindNavPrevention: true,
          postfix: "",
          imageUploader: {
          brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
          contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
          allowUrls: true
          },
          onDemand: true,
          discardSelector: ".discard-answer"
          ,immediatelyShowMarkdownHelp:true
          });


          }
          });














          draft saved

          draft discarded


















          StackExchange.ready(
          function () {
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53393993%2fcreate-a-remote-external-tables%23new-answer', 'question_page');
          }
          );

          Post as a guest















          Required, but never shown

























          1 Answer
          1






          active

          oldest

          votes








          1 Answer
          1






          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes









          1














          You need to make sure Oracle has read/write access to EXTERNAL_TEST_DIR because it has to be able to write out a log to that same directory. Refer to this link for more details.






          share|improve this answer





















          • To expand upon @dcp's answer, the files that make up the external table need to be "visible" to the database server.
            – BobC
            Nov 21 at 4:54
















          1














          You need to make sure Oracle has read/write access to EXTERNAL_TEST_DIR because it has to be able to write out a log to that same directory. Refer to this link for more details.






          share|improve this answer





















          • To expand upon @dcp's answer, the files that make up the external table need to be "visible" to the database server.
            – BobC
            Nov 21 at 4:54














          1












          1








          1






          You need to make sure Oracle has read/write access to EXTERNAL_TEST_DIR because it has to be able to write out a log to that same directory. Refer to this link for more details.






          share|improve this answer












          You need to make sure Oracle has read/write access to EXTERNAL_TEST_DIR because it has to be able to write out a log to that same directory. Refer to this link for more details.







          share|improve this answer












          share|improve this answer



          share|improve this answer










          answered Nov 20 at 13:28









          dcp

          42.6k16119145




          42.6k16119145












          • To expand upon @dcp's answer, the files that make up the external table need to be "visible" to the database server.
            – BobC
            Nov 21 at 4:54


















          • To expand upon @dcp's answer, the files that make up the external table need to be "visible" to the database server.
            – BobC
            Nov 21 at 4:54
















          To expand upon @dcp's answer, the files that make up the external table need to be "visible" to the database server.
          – BobC
          Nov 21 at 4:54




          To expand upon @dcp's answer, the files that make up the external table need to be "visible" to the database server.
          – BobC
          Nov 21 at 4:54


















          draft saved

          draft discarded




















































          Thanks for contributing an answer to Stack Overflow!


          • Please be sure to answer the question. Provide details and share your research!

          But avoid



          • Asking for help, clarification, or responding to other answers.

          • Making statements based on opinion; back them up with references or personal experience.


          To learn more, see our tips on writing great answers.





          Some of your past answers have not been well-received, and you're in danger of being blocked from answering.


          Please pay close attention to the following guidance:


          • Please be sure to answer the question. Provide details and share your research!

          But avoid



          • Asking for help, clarification, or responding to other answers.

          • Making statements based on opinion; back them up with references or personal experience.


          To learn more, see our tips on writing great answers.




          draft saved


          draft discarded














          StackExchange.ready(
          function () {
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53393993%2fcreate-a-remote-external-tables%23new-answer', 'question_page');
          }
          );

          Post as a guest















          Required, but never shown





















































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown

































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown







          Popular posts from this blog

          Costa Masnaga

          Fotorealismo

          Sidney Franklin