Communities

Writing
Writing
Codidact Meta
Codidact Meta
The Great Outdoors
The Great Outdoors
Photography & Video
Photography & Video
Scientific Speculation
Scientific Speculation
Cooking
Cooking
Electrical Engineering
Electrical Engineering
Judaism
Judaism
Languages & Linguistics
Languages & Linguistics
Software Development
Software Development
Mathematics
Mathematics
Christianity
Christianity
Code Golf
Code Golf
Music
Music
Physics
Physics
Linux Systems
Linux Systems
Power Users
Power Users

Dashboard
Notifications
Mark all as read
Q&A

How to start mysql in Manjaro from terminal?

+2
−0

I had installed mysql using the following command

sudo pacman -Sy mysql

Earlier, I was using Lampp(Xampp for Linux) where I could start using the command

/opt/lampp/start start

I am not sure if I was running Xampp that way cause, it's been a long day I had used Lampp. Now, I want to run mysql (which I installed using sudo pacman -Sy mysql). I was looking at help also. But, I didn't find any start command.

mysql --help

The following groups are read: mysql mariadb-client client client-server client-mariadb
The following options may be given as the first argument:
--print-defaults          Print the program argument list and exit.
--no-defaults             Don't read default options from any option file.
The following specify which files/extra groups are read (specified before remaining options):
--defaults-file=#         Only read default options from the given file #.
--defaults-extra-file=#   Read this file after the global files are read.
--defaults-group-suffix=# Additionally read default groups with # appended as a suffix.

  -?, --help          Display this help and exit.
  -I, --help          Synonym for -?
  --abort-source-on-error 
                      Abort 'source filename' operations in case of errors
  --auto-rehash       Enable automatic rehashing. One doesn't need to use
                      'rehash' to get table and field completion, but startup
                      and reconnecting may take a longer time. Disable with
                      --disable-auto-rehash.
                      (Defaults to on; use --skip-auto-rehash to disable.)
  -A, --no-auto-rehash 
                      No automatic rehashing. One has to use 'rehash' to get
                      table and field completion. This gives a quicker start of
                      mysql and disables rehashing on reconnect.
  --auto-vertical-output 
                      Automatically switch to vertical output mode if the
                      result is wider than the terminal width.
  -B, --batch         Don't use history file. Disable interactive behavior.
                      (Enables --silent.)
  --binary-as-hex     Print binary data as hex
  --character-sets-dir=name 
                      Directory for character set files.
  --column-type-info  Display column type information.
  -c, --comments      Preserve comments. Send comments to the server. The
                      default is --skip-comments (discard comments), enable
                      with --comments.
  -C, --compress      Use compression in server/client protocol.
  -#, --debug[=#]     This is a non-debug version. Catch this and exit.
  --debug-check       Check memory and open file usage at exit.
  -T, --debug-info    Print some debug info at exit.
  -D, --database=name Database to use.
  --default-character-set=name 
                      Set the default character set.
  --delimiter=name    Delimiter to be used.
  -e, --execute=name  Execute command and quit. (Disables --force and history
                      file.)
  -E, --vertical      Print the output of a query (rows) vertically.
  -f, --force         Continue even if we get an SQL error. Sets
                      abort-source-on-error to 0
  -G, --named-commands 
                      Enable named commands. Named commands mean this program's
                      internal commands; see mysql> help . When enabled, the
                      named commands can be used from any line of the query,
                      otherwise only from the first line, before an enter.
                      Disable with --disable-named-commands. This option is
                      disabled by default.
  -i, --ignore-spaces Ignore space after function names.
  --init-command=name SQL Command to execute when connecting to MariaDB server.
                      Will automatically be re-executed when reconnecting.
  --local-infile      Enable/disable LOAD DATA LOCAL INFILE.
  -b, --no-beep       Turn off beep on error.
  -h, --host=name     Connect to host.
  -H, --html          Produce HTML output.
  -X, --xml           Produce XML output.
  --line-numbers      Write line numbers for errors.
                      (Defaults to on; use --skip-line-numbers to disable.)
  -L, --skip-line-numbers 
                      Don't write line number for errors.
  -n, --unbuffered    Flush buffer after each query.
  --column-names      Write column names in results.
                      (Defaults to on; use --skip-column-names to disable.)
  -N, --skip-column-names 
                      Don't write column names in results.
  --sigint-ignore     Ignore SIGINT (CTRL-C).
  -o, --one-database  Ignore statements except those that occur while the
                      default database is the one named at the command line.
  --pager[=name]      Pager to use to display results. If you don't supply an
                      option, the default pager is taken from your ENV variable
                      PAGER. Valid pagers are less, more, cat [> filename],
                      etc. See interactive help (\h) also. This option does not
                      work in batch mode. Disable with --disable-pager. This
                      option is disabled by default.
  -p, --password[=name] 
                      Password to use when connecting to server. If password is
                      not given it's asked from the tty.
.........
..........

When I try to run

mysql -A

I get the following error

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/run/mysqld/mysqld.sock' (2)

I was just running the command for testing, I totally don't know what auto-rehash is.

mysql version is :

mysql Ver 15.1 Distrib 10.5.10-MariaDB, for Linux (x86_64) using readline 5.1

I had tried to run the command

sudo mysql -u root -p

It was asking me for password. I had tried three default passwords.

  1. localhost
  2. root
  3. (empty)

All of them were returning the following error

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/run/mysqld/mysqld.sock' (2)

I had tried to start mysql using service command.

sudo service mysql start

Unfortunately, "service" application wasn't available. When I tried with systemctl I got the following error

Failed to enable unit: Unit file mysqld.service does not exist.

When I only run mysql directly. I got following error.

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/run/mysqld/mysqld.sock' (2)

I was trying to check /run/mysqld/mysqld.sock file. When I entered /run/ I noticed there was no mysqld folder. I had installed mysql from snapd.

Why does this post require moderator attention?
You might want to add some details to your flag.
Why should this post be closed?

4 comments

It feels like the mysql server isn't running. Trying to use the service command will not succeed, because Manjaro is based on Arch, and Arch does not have the service, but rather the systemctl command (in other words, systemd). Thus, try (re)starting mysql by using the systemctl command. Be aware that the commandline for systemctl probably will differ from how you would use the system command, though. (1/2) elgonzo‭ 14 days ago

(2/2) Overview of using mysql with systemctl here: https://dev.mysql.com/doc/refman/8.0/en/using-systemd.html elgonzo‭ 14 days ago

Side note: If you can't diagnose/solve the problem, i suggest seeking help in a mysql/Manjaro/Arch forum that's better suited for a back-and-forth discussion. Trying to troubleshoot system configuration problems based on a brief description in a Q&A format is rather limiting and cumbersome, as in many cases troubleshooting is a sequence of steps where the choice of subsequent troubleshooting steps is often informed by the results of previous steps and not just a single canonical and brief answer elgonzo‭ 14 days ago

@elgonzo Actually, I had tried with systemctl also. But, I get that mysql.service not found. Even, mysqld.service not found Istiak‭ 14 days ago

1 answer

+1
−0

Actually, It was happening for mariadb wasn't installed. So, I simply was trying to install mysqld directly (Some websites said to install mysqld). But, there was no mysqld package. So, I had wrote mysqld in command line and, run that command. Then, pamac checked repositories. Then, installed mariadb.

sudo pamac install mariadb

Now, I can simply start/enable mysqld using the following command.

sudo systemctl enable mysqld
Why does this post require moderator attention?
You might want to add some details to your flag.

0 comments

Sign up to answer this question »