<?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>to live is to die &#187; MySQL</title>
	<atom:link href="http://www.artegrafico.net/blog/category/linux-unix/mysql-linux-unix/feed" rel="self" type="application/rss+xml" />
	<link>http://www.artegrafico.net/blog</link>
	<description>artegrafico.net</description>
	<lastBuildDate>Thu, 12 Aug 2010 08:54:30 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Eliminando registros duplicados de una tabla SQL usando DISTINCT ó GROUP BY.</title>
		<link>http://www.artegrafico.net/blog/eliminar-registros-duplicados-de-una-tabla-usando-distinct-o-group-by.html</link>
		<comments>http://www.artegrafico.net/blog/eliminar-registros-duplicados-de-una-tabla-usando-distinct-o-group-by.html#comments</comments>
		<pubDate>Thu, 25 Mar 2010 17:54:04 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[create table]]></category>
		<category><![CDATA[distinct]]></category>
		<category><![CDATA[duplicados]]></category>
		<category><![CDATA[group by]]></category>
		<category><![CDATA[query]]></category>
		<category><![CDATA[sql]]></category>

		<guid isPermaLink="false">http://www.artegrafico.net/blog/?p=598</guid>
		<description><![CDATA[]]></description>
			<content:encoded><![CDATA[<p><strong>DISTINCT </strong>es una palabra clave que usamos e nuestras consultas <strong>SQL </strong>para eliminar filas duplicadas.</p>
<pre class="brush:sql">SELECT DISTINCT columna FROM tabla</pre>
<p>Ahora bien si queremos eliminar los registros duplicados de una tabla y copiarlos en una nueva podremos hacerlo con la palabra clave <strong>DISTICT </strong>o la cláusula <strong>GROUP BY </strong>que suele tener menos BUGS que la primera.</p>
<pre class="brush:sql">Opción 1:
CREATE TABLE nueva_tabla AS SELECT DISTINCT columna FROM tabla;
Opcion 2:
CREATE TABLE nueva_tabla AS SELECT * FROM tabla GROUP BY (id);</pre>
<p>Eliminamos la tabla con los registros duplicados:</p>
<pre class="brush:sql">DROP TABLE tabla;</pre>
<p>Renombramos la nueva tabla por el nombre de la que ya teníamos:</p>
<pre class="brush:sql">RENAME TABLE tabla_nueva TO tabla;</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.artegrafico.net/blog/eliminar-registros-duplicados-de-una-tabla-usando-distinct-o-group-by.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Como recuperar las claves de sus Bases de Datos de Plesk</title>
		<link>http://www.artegrafico.net/blog/como-recuperar-las-claves-de-sus-bases-de-datos-de-plesk.html</link>
		<comments>http://www.artegrafico.net/blog/como-recuperar-las-claves-de-sus-bases-de-datos-de-plesk.html#comments</comments>
		<pubDate>Thu, 02 Jul 2009 11:37:01 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Administración]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[Plesk]]></category>
		<category><![CDATA[Fedora]]></category>
		<category><![CDATA[psa]]></category>

		<guid isPermaLink="false">http://www.artegrafico.net/blog/?p=544</guid>
		<description><![CDATA[Tan sencillo como realizar esta consulta a la Base de Datos psa de PLESK. Nos devolverá el dominio, nombre de la base de datos, usuario y clave seleccionada. Esta consulta nos listará todas las bases de datos y sus claves pero si queremos filtrarla para un determinado dominio debemos añadir una cláusula WHERE al final [...]]]></description>
			<content:encoded><![CDATA[<p>Tan sencillo como realizar esta consulta a la Base de Datos <strong>psa</strong> de PLESK. Nos devolverá el dominio, nombre de la base de datos, usuario y clave seleccionada. Esta consulta nos listará todas las bases de datos y sus claves pero si queremos filtrarla para un determinado dominio debemos añadir una cláusula WHERE al final de la consulta; (ejemplo: WHERE domains.name=&#8217;dominio.com&#8217;).</p>
<pre class="brush:c">mysql -u admin -p
password: *******
mysql&gt; use psa</pre>
<pre class="brush:sql">SELECT
data_bases.name AS bd,
db_users.login AS usuario,
accounts.password AS clave,
domains.name AS dominio,
data_bases.type AS tipo
FROM
db_users
INNER JOIN data_bases ON (db_users.db_id = data_bases.id)
INNER JOIN accounts ON (db_users.account_id = accounts.id)
INNER JOIN domains ON (data_bases.dom_id = domains.id)
ORDER BY domains.name ASC</pre>
<p><span style="color: #888888;">* Probado en Fedora Core 5 Plesk 8.6</span></p>
]]></content:encoded>
			<wfw:commentRss>http://www.artegrafico.net/blog/como-recuperar-las-claves-de-sus-bases-de-datos-de-plesk.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Shell Script para hacer copias de seguridad de nuestras bases de datos con ncftpput.</title>
		<link>http://www.artegrafico.net/blog/shell-script-para-hacer-copias-de-seguridad-de-nuestras-bases-de-datos-con-ncftpput.html</link>
		<comments>http://www.artegrafico.net/blog/shell-script-para-hacer-copias-de-seguridad-de-nuestras-bases-de-datos-con-ncftpput.html#comments</comments>
		<pubDate>Mon, 15 Jun 2009 17:17:27 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Administración]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[crontab]]></category>
		<category><![CDATA[Fedora]]></category>
		<category><![CDATA[ftp]]></category>
		<category><![CDATA[gentoo]]></category>
		<category><![CDATA[ncftpput]]></category>
		<category><![CDATA[shell script]]></category>

		<guid isPermaLink="false">http://www.artegrafico.net/blog/?p=529</guid>
		<description><![CDATA[Pues ya estoy aquí de nuevo para escribir un shell script que realiza una copia de seguridad de nuestras Bases de Datos y mediante ncftpput las enviamos a nuestro servidor FTP. # DATOS SERVIDOR=GENTOO-VPS FECHA=$(date +"%m-%d-%Y") # mm-dd-yyyy EMAIL=su@email ASUNTO="Backup SQL" TMP=/home/backup/tmp # DATOS BD BD_USUARIO=root BD_CLAVE=******* # DATOS FTP NCFTP="/usr/bin/ncftpput" FTP=ftp.dominio.com FTP_USUARIO=user FTP_CLAVE=****** FTP_DESTINO="./servidores/$SERVIDOR/MySQL/" [...]]]></description>
			<content:encoded><![CDATA[<p>Pues ya estoy aquí de nuevo para escribir un<strong> shell script </strong>que realiza una copia de seguridad de nuestras Bases de Datos y mediante <strong>ncftpput </strong>las enviamos a nuestro servidor FTP.</p>
<pre class="brush:bash"># DATOS
SERVIDOR=GENTOO-VPS
FECHA=$(date +"%m-%d-%Y") # mm-dd-yyyy
EMAIL=su@email
ASUNTO="Backup SQL"
TMP=/home/backup/tmp

# DATOS BD
BD_USUARIO=root
BD_CLAVE=*******

# DATOS FTP
NCFTP="/usr/bin/ncftpput"
FTP=ftp.dominio.com
FTP_USUARIO=user
FTP_CLAVE=******
FTP_DESTINO="./servidores/$SERVIDOR/MySQL/"

for BD in `mysql -u$BD_USUARIO -p$BD_CLAVE -e "show databases" -B -N`
do
    mysqldump -u$BD_USUARIO -p$BD_CLAVE $BD &gt; $TMP/$BD-$FECHA.sql
    $NCFTP -m -u $FTP_USUARIO -p $FTP_CLAVE $FTP $FTP_DESTINO/$BD/ $TMP/$BD-$FECHA.sql
    rm -f $TMP/$BD-$FECHA.sql
done

mail -s "$ASUNTO - $FECHA - $SERVIDOR" $EMAIL</pre>
<p>Para optimizar la tarea podemos incluirla en nuestro <strong>crontab</strong> e incluimos la siguiente linea con la programación de la tarea y donde está ubicado nuestro script. Se ejecutará a las 2 de la madrugada todos los días:</p>
<pre class="brush:bash">crontab -e
0       2       *       *       *       /home/backup/backup-bd-diaria.sh</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.artegrafico.net/blog/shell-script-para-hacer-copias-de-seguridad-de-nuestras-bases-de-datos-con-ncftpput.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Cambiando una clave MySQL desde SHELL.</title>
		<link>http://www.artegrafico.net/blog/cambiando-una-clave-mysql-desde-shell.html</link>
		<comments>http://www.artegrafico.net/blog/cambiando-una-clave-mysql-desde-shell.html#comments</comments>
		<pubDate>Tue, 02 Jun 2009 14:37:13 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[clave]]></category>
		<category><![CDATA[gentoo]]></category>

		<guid isPermaLink="false">http://www.artegrafico.net/blog/?p=439</guid>
		<description><![CDATA[# Paramos el servicio de MySQL. /etc/init.d/mysql stop mysqld_safe --skip-grant-tables &#38; # recibimos un mensaje como este: # mysql # nohup: ignoring input and redirecting stderr to stdout. Starting mysqld daemon with databases from /var/lib/mysql # Y le indicamos a MySQL que deseamos acceder como usuario root. mysql -u root # y recibimos el mensaje [...]]]></description>
			<content:encoded><![CDATA[<pre class="brush:c"># Paramos el servicio de MySQL.
/etc/init.d/mysql stop
mysqld_safe --skip-grant-tables &amp;

# recibimos un mensaje como este:
# mysql # nohup: ignoring input and redirecting stderr to stdout. Starting mysqld daemon with databases from /var/lib/mysql
# Y le indicamos a MySQL que deseamos acceder como usuario root.
mysql -u root

# y recibimos el mensaje de bienvenida a MySQL:
# Welcome to the MySQL monitor.  Commands end with ; or \g.
# Your MySQL connection id is 1
# Server version: 5.0.44-log Gentoo Linux mysql-5.0.44-r2
# Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

# Una vez dentro solo tenemos que indicarle la Base de Datos a usar.
mysql&gt;use mysql;

# y posteriormente realizamos el cambio de clave para el usuario seleccionado.
mysql&gt;update user set password=PASSWORD("nueva-clave") where User='root';
mysql&gt;flush privileges;
mysql&gt;quit

# Paramos el servicio y lo volvemos a iniciar.
/etc/init.d/mysql stop
/etc/init.d/mysql start

# Ahora solo debemos comprobar que accede con la nueva clave.
mysql -u root -p</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.artegrafico.net/blog/cambiando-una-clave-mysql-desde-shell.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Permitir conexiones remotas a MySQL en Gentoo Linux</title>
		<link>http://www.artegrafico.net/blog/permitir-conexiones-remotas-a-mysql-en-gentoo-linux.html</link>
		<comments>http://www.artegrafico.net/blog/permitir-conexiones-remotas-a-mysql-en-gentoo-linux.html#comments</comments>
		<pubDate>Tue, 31 Mar 2009 21:11:22 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[bid-address]]></category>
		<category><![CDATA[gentoo]]></category>
		<category><![CDATA[localhost]]></category>
		<category><![CDATA[my.cnf]]></category>
		<category><![CDATA[skip-networking]]></category>
		<category><![CDATA[webmin]]></category>

		<guid isPermaLink="false">http://www.artegrafico.net/blog/?p=381</guid>
		<description><![CDATA[Por defecto MySQL solo nos permite realizar conexiones desde nuestro host local, por lo que para permitir conexiones remotas  a nuestro servidor de Base de Datos debemos editar el fichero de configuración de MySQL. vi /etc/mysql/my.cnf Una vez ahí debemos comentar la linea skip-networking e incluir la IP de nuestro servidor en bind-address. #skip-networking bind-address [...]]]></description>
			<content:encoded><![CDATA[<p>Por defecto <a href="http://es.wikipedia.org/wiki/MySQL" target="_blank">MySQL </a>solo nos permite realizar conexiones desde nuestro host local, por lo que para permitir conexiones remotas  a nuestro servidor de Base de Datos debemos editar el fichero de configuración de <a href="http://es.wikipedia.org/wiki/MySQL" target="_blank">MySQL</a>.</p>
<pre class="brush:c">vi /etc/mysql/my.cnf</pre>
<p>Una vez ahí debemos comentar la linea <strong>skip-networking</strong> e incluir la IP de nuestro servidor en <strong>bind-address</strong>.</p>
<pre class="brush:c">#skip-networking
bind-address = xxx.xxx.xxx.xxx</pre>
<p>Una vez hecho esto solo hay que dale permisos al usuario en la tabla users de <a href="http://es.wikipedia.org/wiki/MySQL" target="_blank">MySQL</a>.</p>
<pre class="brush:c">mysql -u root -p
GRANT ALL ON *.* TO usuario@xxx.xxx.xxx.xxx IDENTIFIED BY 'clave';</pre>
<p>Reiniciamos <a href="http://es.wikipedia.org/wiki/MySQL" target="_blank">MySQL </a>y ya lo tenemos listo.</p>
<pre class="brush:c">/etc/init.d/mysql restart</pre>
<p><em>Otra opción es hacerlo directamente desde <strong>Webmin </strong>haciendo click en servidores -&gt; Servidor de Base de Datos MySQL -&gt; Permisos de Usuario -&gt; Editar el usuario root u otro que deseemos -&gt; y en máquinas cambiar la selección <strong>localhost </strong>por <strong>cualquiera.</strong></em></p>
]]></content:encoded>
			<wfw:commentRss>http://www.artegrafico.net/blog/permitir-conexiones-remotas-a-mysql-en-gentoo-linux.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

