# MYSQL no arranca

## cr0n0s

Hola que tal estoy intetado levantar el mysql pero no levanta:

```
/etc/init.d/mysql start

 * Checking mysqld configuration for mysql ...                                            [ ok ]

 * Starting mysql ...

/etc/init.d/mysql: line 76: [: too many arguments

 * You don't appear to have the mysql database installed yet.

 * Please run `emerge --config =ERROR: expected 2 parameters, got 3!` to have this done...

 * ERROR: mysql failed to start[code]

realizando el emerge de la linea 5 sale esto:

[/code]emerge --config =ERROR: expected 2 parameters, got 3! to have this done

setlocale: unsupported locale setting

setlocale: unsupported locale setting

!!! config can only take a single package atom at this time[code]

dejo el init.d de mysql:

[/code]cat /etc/init.d/mysql 

#!/sbin/runscript

# Copyright 1999-2014 Gentoo Foundation

# Distributed under the terms of the GNU General Public License v2

# $Id$

extra_commands="checkconfig"

depend() {

   use net.lo

   # localmount needed for $basedir

   need localmount

}

get_config() {

   my_print_defaults --config-file="$1" mysqld |

   sed -n -e "s/^--$2=//p"

}

mysql_svcname() {

   local ebextra=

   case "${SVCNAME}" in

      mysql*) ;;

      *) ebextra=" (mysql)" ;;

   esac

   echo "${SVCNAME}${ebextra}"

}

start() {

   # Check for old conf.d variables that mean migration was not yet done.

   set | egrep -sq '^(mysql_slot_|MYSQL_BLOG_PID_FILE|STOPTIMEOUT)'

   rc=$?

   # Yes, MYSQL_INIT_I_KNOW_WHAT_I_AM_DOING is a hidden variable.

   # It does have a use in testing, as it is possible to build a config file

   # that works with both the old and new init scripts simulateously.

   if [ "${rc}" = 0 -a -z "${MYSQL_INIT_I_KNOW_WHAT_I_AM_DOING}" ]; then

      eerror "You have not updated your conf.d for the new mysql-init-scripts-2 revamp."

      eerror "Not proceeding because it may be dangerous."

      return 1

   fi

   # Check the config or die

   checkconfig || return 1

   # Now we can startup

   ebegin "Starting $(mysql_svcname)"

   MY_CNF="${MY_CNF:-/etc/${SVCNAME}/my.cnf}"

   if [ ! -r "${MY_CNF}" ] ; then

      eerror "Cannot read the configuration file \`${MY_CNF}'"

      return 1

   fi

   # tail -n1 is critical as these we only want the last instance of the option

   local basedir=$(get_config "${MY_CNF}" basedir | tail -n1)

   local datadir=$(get_config "${MY_CNF}" datadir | tail -n1)

   local pidfile=$(get_config "${MY_CNF}" pid-file | tail -n1)

   local socket=$(get_config "${MY_CNF}" socket | tail -n1)

   local chroot=$(get_config "${MY_CNF}" chroot | tail -n1)

   if [ -n "${chroot}" ] ; then

      socket="${chroot}/${socket}"

      pidfile="${chroot}/${pidfile}"

   fi

   if [ ! -d "${datadir}" ] ; then

      eerror "MySQL datadir \`${datadir}' is empty or invalid"

      eerror "Please check your config file \`${MY_CNF}'"

      return 1

   fi

   if [ ! -d "${datadir}"/mysql ] ; then

      # find which package is installed to report an error

      local EROOT=$(portageq envvar EROOT)

      local DBPKG_P=$(portageq match ${EROOT} $(portageq expand_virtual ${EROOT} virtual/mysql))

      if [ -z ${DBPKG_P} ] ; then

         eerror "You don't appear to have a server package installed yet."

      else

         eerror "You don't appear to have the mysql database installed yet."

         eerror "Please run \`emerge --config =${DBPKG_P}\` to have this done..."

      fi

      return 1

   fi

   local piddir="${pidfile%/*}"

   checkpath -d --owner mysql:mysql --mode 0755 "$piddir"

   rc=$?

   if [ $rc -ne 0 ]; then

      eerror "Directory $piddir for pidfile does not exist and cannot be created"

      return 1

   fi

   local startup_timeout=${STARTUP_TIMEOUT:-900}

   local startup_early_timeout=${STARTUP_EARLY_TIMEOUT:-1000}

   local tmpnice="${NICE:+"--nicelevel "}${NICE}"

   local tmpionice="${IONICE:+"--ionice "}${IONICE}"

   start-stop-daemon \

      ${DEBUG:+"--verbose"} \

      --start \

      --exec "${basedir}"/sbin/mysqld \

      --pidfile "${pidfile}" \

      --background \

      --wait ${startup_early_timeout} \

      ${tmpnice} \

      ${tmpionice} \

      -- --defaults-file="${MY_CNF}" ${MY_ARGS}

   local ret=$?

   if [ ${ret} -ne 0 ] ; then

      eend ${ret}

      return ${ret}

   fi

   ewaitfile ${startup_timeout} "${socket}"

   eend $? || return 1

   save_options pidfile "${pidfile}"

   save_options basedir "${basedir}"

}

stop() {

   ebegin "Stopping $(mysql_svcname)"

   local pidfile="$(get_options pidfile)"

   local basedir="$(get_options basedir)"

   local stop_timeout=${STOP_TIMEOUT:-120}

   start-stop-daemon \

      ${DEBUG:+"--verbose"} \

      --stop \

      --exec "${basedir}"/sbin/mysqld \

      --pidfile "${pidfile}" \

      --retry ${stop_timeout}

   eend $?

}

checkconfig() {

   local my_cnf="${MY_CNF:-/etc/${SVCNAME}/my.cnf}"

   local basedir=$(get_config "${my_cnf}" basedir | tail -n1)

   local svc_name=$(mysql_svcname)

   ebegin "Checking mysqld configuration for ${svc_name}"

   if [ ${RC_CMD} = "checkconfig" ] ; then

      # We are calling checkconfig specifically.  Print warnings regardless.

      "${basedir}"/sbin/mysqld --defaults-file="${my_cnf}" --help --verbose > /dev/null

   else

      # Suppress output to check the return value

      "${basedir}"/sbin/mysqld --defaults-file="${my_cnf}" --help --verbose > /dev/null 2>&1

      # If the above command does not return 0,

      # then there is an error to echo to the user

      if [ $? -ne 0 ] ; then

         "${basedir}"/sbin/mysqld --defaults-file="${my_cnf}" --help --verbose > /dev/null

      fi

   fi

   eend $? "${svc_name} config check failed"

}

# vim: filetype=gentoo-init-d sw=2 ts=2 sts=2 noet:[code]

y finalmente esto /etc/init.d/mysql: line 76: [: too many arguments:

 [/code]if [ -z ${DBPKG_P} ] ; then

                        eerror "You don't appear to have a server package installed yet."

                else

                        eerror "You don't appear to have the mysql database installed yet."

                        eerror "Please run \`emerge --config =${DBPKG_P}\` to have this done..."

                fi

                return 1
```

ya estube googleando pero no encuentro una solución espero que alguien pueda apoyarme.

Saludos.

----------

## esteban_conde

Hola Cr0n0s que te devuelve el comado "mysql" posiblemente no tengas que iniciarla desde /etc/init.d/

----------

## cr0n0s

 *esteban_conde wrote:*   

> Hola Cr0n0s que te devuelve el comado "mysql" posiblemente no tengas que iniciarla desde /etc/init.d/

 

Hola, que tal @esteban_conde gracias por tu apoyo.

realice lo que mencionas y aparece esto:

```
mysql

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2 "No such file or directory")
```

Saludos.

----------

## esteban_conde

Echa un vistazo el enlacehttp://stackoverflow.com/questions/5376427/cant-connect-to-local-mysql-server-through-socket-var-mysql-mysql-sock-38

Aunque no es para gentoo creo que puede servirte o al menos aleccionarte sobre donde buscar.

----------

## quilosaq

```
...

* You don't appear to have the mysql database installed yet.

...
```

Parece que no tienes creada la base de datos. Prueba con 

```
emerge --config mariadb
```

----------

## cr0n0s

hola, buenas noches.

perdon por el timepo en responder, ya por fin quedo, soy tan tonto que no me di cuenta que cuando instalaba, lo que me instalaba era un mariadb y no un mysql como tal.

muchas gracias por su tiempo  :Very Happy: 

----------

