<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Administración de ORACLE en Español &#187; GRANT</title>
	<atom:link href="http://colacios.es/blog/WordPress3/tag/grant/feed/" rel="self" type="application/rss+xml" />
	<link>http://colacios.es/blog/WordPress3</link>
	<description>Administración de Base de datos ORACLE en español</description>
	<lastBuildDate>Tue, 11 Mar 2014 12:56:35 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Que GRANT se puede asignar en función del objeto destino en ORACLE</title>
		<link>http://colacios.es/blog/WordPress3/que-grantse-puede-dar-en-funcion-del-objeto-destino-en-oracle/</link>
		<comments>http://colacios.es/blog/WordPress3/que-grantse-puede-dar-en-funcion-del-objeto-destino-en-oracle/#comments</comments>
		<pubDate>Thu, 17 Oct 2013 09:59:54 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Administración Oracle]]></category>
		<category><![CDATA[GRANT]]></category>

		<guid isPermaLink="false">http://colacios.es/blog/WordPress3/?p=614</guid>
		<description><![CDATA[Según el objeto de que se trate, en Oracle podemos dar los siguientes privilegios: Tables: select, insert, update, delete, alter, debug, flashback, on commit refresh, query rewrite, references, all Views: select, insert, update, delete, under, references, flashback, debug Sequence: alter, &#8230; <a href="http://colacios.es/blog/WordPress3/que-grantse-puede-dar-en-funcion-del-objeto-destino-en-oracle/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;">Según el objeto de que se trate, en Oracle podemos dar los siguientes privilegios:</p>
<p style="text-align: justify;"><strong>Tables</strong>: select, insert, update, delete, alter, debug, flashback, on commit refresh, query rewrite, references, all<br />
<strong>Views</strong>: select, insert, update, delete, under, references, flashback, debug<br />
<strong>Sequence:</strong> alter, select<br />
<strong>Packages, Procedures, Functions (Java classes, sources&#8230;):</strong> execute, debug<br />
<strong>Materialized Views</strong>: delete, flashback, insert, select, update<br />
<strong>Directories</strong>: read, write<br />
<strong>Libraries</strong>: execute<br />
<strong>User defined types</strong>: execute, debug, under<br />
<strong>Operators</strong>: execute<br />
<strong>Indextypes</strong>: execute</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://colacios.es/blog/WordPress3/que-grantse-puede-dar-en-funcion-del-objeto-destino-en-oracle/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Manipular una tabla de un entorno Oracle desde otro entorno Oracle mediante DBLINK</title>
		<link>http://colacios.es/blog/WordPress3/manipular-una-tabla-de-un-entorno-oracle-desde-otro-entorno-oracle-mediante-dblink/</link>
		<comments>http://colacios.es/blog/WordPress3/manipular-una-tabla-de-un-entorno-oracle-desde-otro-entorno-oracle-mediante-dblink/#comments</comments>
		<pubDate>Thu, 17 Oct 2013 09:34:32 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Administración Oracle]]></category>
		<category><![CDATA[DATABASE LINK]]></category>
		<category><![CDATA[GRANT]]></category>

		<guid isPermaLink="false">http://colacios.es/blog/WordPress3/?p=609</guid>
		<description><![CDATA[Probablemente como administradores de Oracle nos habrán solicitado lo siguiente: Querer consultar o modificar una tabla que está en un Servidor Oracle con un usuario que está en otro servidor Oracle. Para poder realizar esta tarea, basta con crear un &#8230; <a href="http://colacios.es/blog/WordPress3/manipular-una-tabla-de-un-entorno-oracle-desde-otro-entorno-oracle-mediante-dblink/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;">Probablemente como administradores de Oracle nos habrán solicitado lo siguiente:</p>
<p style="text-align: justify;"><em>Querer consultar o modificar una tabla que está en un Servidor Oracle con un usuario que está en otro servidor Oracle.</em></p>
<p style="text-align: justify;">Para poder realizar esta tarea, basta con <span style="text-decoration: underline;">crear un dblink entre ambas bases de datos</span> y crearlo de manera PUBLIC y posteriormente <span style="text-decoration: underline;">asignar los privilegios</span>(GRANT) de la tabla que queremos poder ver a PUBLIC. Dicha asignación de permisos a PUBLIC la realizaremos en el servidor Oracle donde está la tabla que queremos ver. Para ver que tipo de GRANT podemos asignar puedes consultar esta <a title="GRANT en función del objeto destino" href="http://colacios.es/blog/WordPress3/que-grantse-puede-dar-en-funcion-del-objeto-destino-en-oracle" target="_blank">entrada de blog</a>.</p>
<p style="text-align: justify;">Ejemplo:</p>
<p style="text-align: justify;">En el servidor &#8220;origen&#8221; creamos el dblink public:</p>
<pre style="text-align: justify;">CREATE <strong>PUBLIC</strong> DATABASE LINK "<em>DBLINK_DESTINO</em>"
CONNECT TO <em>SYSTEM</em> <strong>--&gt; o el usuario que queramos usar</strong>
IDENTIFIED BY "&lt;pwd&gt;"
USING '<em>CADENA_CONEXION_DESTINO</em>'; <strong>--&gt; que existirá en tnsnames.ora </strong>
<strong>del servidor Origen y donde se especifica el servidor, puerto, etc...</strong>
<strong>donde conectaremos cuando hagamos las consultas</strong></pre>
<p style="text-align: justify;">Luego en el servidor &#8220;destino&#8221;:</p>
<p style="text-align: justify;">Ejecutaremos desde sqlplus por ejemplo y con el propietario de la tabla en cuestión:</p>
<pre style="text-align: justify;">GRANT ALL ON &lt;nombre_propietario&gt;.&lt;nombre_tabla&gt; TO <strong>PUBLIC</strong>;</pre>
<p style="text-align: justify;">Para mejorar lo anterior y evitar tener que escribir el nombre del propietario en las consultas, podemos crear un sinónimo de esta manera:</p>
<pre style="text-align: justify;">CREATE <strong>PUBLIC</strong> SYNONYM &lt;nombre_tabla&gt; FOR &lt;nombre_propietario&gt;.&lt;nombre_tabla&gt;;</pre>
<p style="text-align: justify;">Lo importante de las sentencias anteriores es especificar &#8220;PUBLIC&#8221; de esta manera los privilegios se hacen disponibles a todos los usuarios de la base de datos. Y mediante el dblink, también lo haces disponibles a aquellos usuarios que puedan conectarse mediante ese dblink, que en este ejemplo son todos.</p>
]]></content:encoded>
			<wfw:commentRss>http://colacios.es/blog/WordPress3/manipular-una-tabla-de-un-entorno-oracle-desde-otro-entorno-oracle-mediante-dblink/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ORA-01031: privilegios insuficientes &#8230; al hacer un GRANT</title>
		<link>http://colacios.es/blog/WordPress3/ora-01031-privilegios-insuficientes-al-hacer-un-grant/</link>
		<comments>http://colacios.es/blog/WordPress3/ora-01031-privilegios-insuficientes-al-hacer-un-grant/#comments</comments>
		<pubDate>Tue, 12 Feb 2013 10:37:18 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Administración Oracle]]></category>
		<category><![CDATA[ORA-?????]]></category>
		<category><![CDATA[GRANT]]></category>
		<category><![CDATA[ORA-01031]]></category>

		<guid isPermaLink="false">http://colacios.es/blog/WordPress3/?p=232</guid>
		<description><![CDATA[Al hacer un GRANT conectado tanto como el usuario SYSTEM y/o SYS en una versión Oracle 7.3.4 para dar permisos de un package de un usuario a otro me aparece el error Oracle: ORA-01031: privilegios insuficientes La solución más rápida &#8230; <a href="http://colacios.es/blog/WordPress3/ora-01031-privilegios-insuficientes-al-hacer-un-grant/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;"><a href="http://colacios.es/blog/WordPress3/wp-content/uploads/2013/02/imagesCAYIGJQC.jpe"><img class="aligncenter  wp-image-375" title="¡¡¡ tú no tienes privilegios !!!" src="http://colacios.es/blog/WordPress3/wp-content/uploads/2013/02/imagesCAYIGJQC.jpe" alt="" width="164" height="158" /></a>Al hacer un GRANT conectado tanto como el usuario SYSTEM y/o SYS en una versión Oracle 7.3.4 para dar permisos de un package de un usuario a otro me aparece el error Oracle:</p>
<p style="text-align: justify;"><strong>ORA-01031: privilegios insuficientes</strong></p>
<p style="text-align: justify;">La solución más rápida a este error es conectarse <strong><span style="text-decoration: underline;">como el usuario propietario</span></strong> del Package (u del objeto que nos dé problemas) y ejecutar el comando GRANT.</p>
<p style="text-align: justify;">Ej.</p>
<p style="text-align: left;"><em><strong>$ sqlplus system/password_system</strong></em><br />
<em><strong>SQL&gt; connect usuario/password_usuario</strong></em><br />
<em><strong>SQL&gt; show user</strong></em><br />
<em><strong>el usuario es &#8220;usuario&#8221;</strong></em><br />
<em><strong>SQL&gt;  GRANT DELETE, INSERT, SELECT, UPDATE ON OPS$USUARIO.PACKAGE_EJEMPLO TO OPS$USUARIO_DESTINO;</strong></em></p>
<p style="text-align: justify;">Pero en mi caso, no tenía el password del usuario en concreto y tampoco me dejaban cambiarlo por si afectaba a alguna aplicación. ¿ Que se puede hacer en este caso ?</p>
<p style="text-align: justify;">Como sí que tenía el password de root a nivel de sistema operativo (Unix en este caso) hice lo siguiente:</p>
<p style="text-align: justify;"><em><strong># su &#8211; usuario</strong></em><br />
<em><strong>$ whoami</strong></em><br />
<em><strong>usuario</strong></em><br />
<em><strong>$ sqlplus /</strong></em></p>
<p style="text-align: justify;">Ahora ya estaba conectado como el usuario &#8220;usuario&#8221; y ya podía ejecutar el comando GRANT.</p>
<p style="text-align: left;"><em><strong>SQL&gt; show user</strong></em><br />
<em><strong>el usuario es &#8220;usuario&#8221;</strong></em><br />
<em><strong>SQL&gt;  GRANT DELETE, INSERT, SELECT, UPDATE ON OPS$USUARIO.PACKAGE_EJEMPLO TO OPS$USUARIO_DESTINO;</strong></em></p>
<p style="text-align: justify;">Fácil  ¿verdad?</p>
]]></content:encoded>
			<wfw:commentRss>http://colacios.es/blog/WordPress3/ora-01031-privilegios-insuficientes-al-hacer-un-grant/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
