mariadb(1)
mariadb(1)
NAMN
mariadb – MariaDB:s kommandoradsverktyg (mysql är nu en symbolisk länk till mariadb)
SYNOPSIS
mariadb [alternativ] db_namn
BESKRIVNING
mariadb är ett enkelt SQL-skal (med GNU Readline-stöd). Det stöder både interaktiv och icke-interaktiv användning. När det används interaktivt presenteras frågeresultat i ASCII-tabellformat. När det används icke-interaktivt (till exempel som ett filter) presenteras resultatet i tabbseparerat format. Utdataformatet kan ändras med kommandoradsalternativ.
Om du får problem på grund av otillräckligt minne för stora resultatuppsättningar kan du använda alternativet --quick. Det tvingar mariadb att hämta resultat från servern en rad i taget i stället för att hämta hela resultatuppsättningen och buffra den i minnet innan den visas. Detta görs genom att returnera resultatuppsättningen med C API-funktionen mariadb_use_result() i klient/server-biblioteket i stället för mysql_store_result().
Det är enkelt att använda mariadb. Starta det från kommandotolken så här:
shell> mariadb db_namn
Eller:
shell> mariadb --user=användarnamn --password=ditt_lösenord db_namn
Skriv sedan en SQL-sats, avsluta den med ;, \g eller \G och tryck på Enter.
Om du trycker Control-C försöker mariadb avbryta den aktuella satsen. Om det inte går, eller om Control-C trycks en gång till innan satsen har avbrutits, avslutas mariadb.
Du kan köra SQL-satser i en skriptfil (batchfil) så här:
shell> mariadb db_namn < script.sql > output.tab
MARIADB-ALTERNATIV
mariadb stöder följande alternativ, som kan anges på kommandoraden eller i alternativfilgrupperna [mariadb], [client], [client-server] eller [client-mariadb]. mariadb stöder också alternativ för bearbetning av alternativfiler.
--help,-?,-I- Visa ett hjälpmeddelande och avsluta.
--abort-source-on-error- Avbryt
source filnamn-operationer om fel uppstår.
--auto-rehash- Aktivera automatisk omhashning. Detta alternativ är aktiverat som standard, vilket gör att databas-, tabell- och kolumnnamn kan kompletteras automatiskt. Använd
--disable-auto-rehash,--no-auto-rehasheller--skip-auto-rehashför att inaktivera omhashning. Då startar mariadb snabbare, men du måste köra kommandotrehashom du vill använda namnkomplettering. - För att komplettera ett namn skriver du in början av det och trycker Tab. Om namnet är entydigt kompletterar mariadb det. Annars kan du trycka Tab igen för att se möjliga namn som börjar med det du har skrivit hittills. Komplettering sker inte om ingen standarddatabas är vald.
--auto-vertical-output- Växla automatiskt till vertikalt utdataformat om resultatet är bredare än terminalens bredd.
--batch,-B- Skriv ut resultat med tabulator som kolumnseparator och varje rad på en ny rad. Med detta alternativ använder mariadb inte historikfilen.
- Batchläge ger icke-tabellformat för utdata och escape-kodar specialtecken. Escape-kodning kan inaktiveras med råläge; se beskrivningen av alternativet
--raw.
--binary-mode- Binärt läge gör att vissa teckensekvenser behandlas som data som annars skulle tolkas på ett särskilt sätt av parsern. Den här växeln stänger specifikt av tolkning av alla klientkommandon utom
\CochDELIMITERi icke-interaktivt läge, det vill säga när binärt läge kombineras med antingen 1) inmatning via pipe, 2) alternativet--batcheller 3) kommandotsource. I binärt läge bevaras också förekomster av\r\noch ASCII\0i strängar, medan\r\nannars översätts till\noch\0inte tillåts i användarinmatning.
--character-sets-dir=väg- Katalogen där teckenuppsättningar är installerade.
--column-names- Skriv kolumnnamn i resultat.
--column-type-info,-m- Visa metadata för resultatuppsättningen.
--comments,-c- Om kommentarer ska bevaras i satser som skickas till servern. Standard är
--skip-comments(kasta bort kommentarer); aktivera med--comments(bevara kommentarer).
--compress,-C- Komprimera all information som skickas mellan klienten och servern om båda stöder komprimering.
--connect-timeout=sekunder- Ange antalet sekunder innan anslutningstimeout. (Standardvärde är 0.)
--database=db_namn,-D db_namn- Databasen som ska användas.
--debug[=debug_alternativ],-# [debug_alternativ]- Skriv en felsökningslogg. En typisk sträng för
debug_alternativär'd:t:o,filnamn'. Standardvärdet är'd:t:o,/tmp/mysql.trace'.
--debug-check- Skriv viss felsökningsinformation när programmet avslutas.
--debug-info,-T- Skriv felsökningsinformation samt statistik över minnes- och CPU-användning när programmet avslutas.
--default-auth=namn- Standardplugin på klientsidan för autentisering.
--default-character-set=teckenuppsättning- Använd
teckenuppsättningsom standardteckenuppsättning för klienten och anslutningen. - Ett vanligt problem när operativsystemet använder utf8 eller någon annan multibyte-teckenuppsättning är att utdata från mariadb-klienten formateras fel, eftersom MariaDB-klienten använder teckenuppsättningen latin1 som standard. Du kan ofta lösa sådana problem genom att använda detta alternativ för att tvinga klienten att använda systemets teckenuppsättning i stället.
--defaults-extra-file=filnamn- Ange
filnamnsom filen att läsa standardalternativ från efter att de globala standardfilerna har lästs. Måste anges som första alternativ.
--defaults-file=filnamn- Ange
filnamnsom filen att läsa standardalternativ från och åsidosätt globala standardfiler. Måste anges som första alternativ.
--defaults-group-suffix=suffix- Utöver grupperna som anges på kommandoraden, läs även grupper med det angivna suffixet.
--delimiter=sträng- Ange satsavgränsaren. Standard är semikolon (
;).
--disable-named-commands- Inaktivera namngivna kommandon. Använd endast formen med
\*, eller använd namngivna kommandon endast i början av en rad som slutar med semikolon (;). mariadb startar med detta alternativ aktiverat som standard. Trots detta fungerar kommandon i långt format fortfarande från första raden. Se avsnittet MARIADB-KOMMANDON.
--enable-cleartext-plugin- Föråldrat alternativ. Finns endast för kompatibilitet med MySQL.
--execute=sats,-e sats- Kör satsen och avsluta. Inaktiverar
--forceoch historikfilen. Standardformatet för utdata motsvarar det som produceras med--batch.
--force,-f- Fortsätt även om ett SQL-fel uppstår. Sätter
--abort-source-on-errortill 0.
--host=värdnamn,-h värdnamn- Anslut till MariaDB-servern på den angivna värden.
--html,-H- Producera HTML-utdata.
--ignore-spaces,-i- Ignorera blanksteg efter funktionsnamn. Gör det möjligt att ha blanksteg, inklusive tabbar och radbrytningar, mellan funktionsnamn och
(. Nackdelen är att inbyggda funktioner då blir reserverade ord.
--init-command=sträng- SQL-kommando som ska köras vid anslutning till MariaDB-servern. Körs automatiskt igen vid återanslutning.
--line-numbers- Skriv radnummer för fel. Inaktivera detta med
--skip-line-numbers.
--local-infile[={0|1}]- Aktivera eller inaktivera LOCAL-funktionalitet för
LOAD DATA INFILE. Utan värde aktiverar alternativet LOCAL. Alternativet kan anges som--local-infile=0eller--local-infile=1för att uttryckligen inaktivera eller aktivera LOCAL. Att aktivera LOCAL har ingen effekt om servern inte också stöder det.
--max-allowed-packet=antal- Ange maximal paketlängd att skicka till eller ta emot från servern. (Standardvärde är 16 MB, största värde 1 GB.)
--max-join-size=antal- Ange den automatiska gränsen för antal rader i en join när
--safe-updatesanvänds. (Standardvärde är 1 000 000.)
--named-commands,-G- Aktivera namngivna mariadb-kommandon. Kommandon i långt format tillåts, inte bara kortformat. Till exempel känns både
quitoch\qigen. Använd--skip-named-commandsför att inaktivera namngivna kommandon. Se avsnittet MARIADB-KOMMANDON. Inaktiverat som standard.
--net-buffer-length=storlek- Ange buffertstorleken för TCP/IP- och socketkommunikation. (Standardvärde är 16 KB.)
--no-auto-rehash,-A- Samma effekt som
--skip-auto-rehash. Se beskrivningen för--auto-rehash.
--no-beep,-b- Ge inget ljudsignal när fel uppstår.
--no-defaults- Läs inte standardalternativ från någon alternativfil. Måste anges som första argument.
--one-database,-o- Ignorera alla satser utom de som inträffar medan standarddatabasen är den som angivits på kommandoraden. Filtreringen är begränsad och baseras endast på
USE-satser. Detta är användbart för att hoppa över uppdateringar till andra databaser i binärloggen.
--pager[=kommando]- Använd det angivna kommandot för att visa frågeutdata i pager. Om kommandot utelämnas används standardpagern från miljövariabeln
PAGER. Giltiga pager-program är till exempelless,more,cat [> filnamn]och liknande. Detta alternativ fungerar endast på Unix och endast i interaktivt läge. Inaktivera paginering med--skip-pager. Avsnittet MARIADB-KOMMANDON beskriver utdata via pager närmare.
--password[=lösenord],-p[lösenord]- Lösenordet som ska användas vid anslutning till servern. Om du använder kortformen
-pfår det inte finnas något mellanslag mellan alternativet och lösenordet. Om du utelämnar lösenordsvärdet efter--passwordeller-ppå kommandoraden kommer mariadb att fråga efter det. - Att ange lösenord på kommandoraden bör betraktas som osäkert. Du kan använda en alternativfil för att undvika att ange lösenordet på kommandoraden.
--pipe,-W- På Windows, anslut till servern via named pipe. Detta alternativ gäller endast om servern stöder named pipe-anslutningar.
--plugin-dir=katalognamn- Katalog för klientplugins.
--port=portnummer,-P portnummer- TCP/IP-portnumret som ska användas för anslutningen, eller 0 för att som standard välja från, i prioritetsordning,
my.cnf,$MYSQL_TCP_PORT,/etc/serviceseller inbyggt standardvärde (3306). Tvingar--protocol=tcpnär det anges på kommandoraden utan andra anslutningsegenskaper.
--print-defaults- Skriv programmets argumentlista och avsluta. Detta måste anges som första argument.
--progress-reports- Hämta förloppsrapporter för långvariga kommandon, som
ALTER TABLE. (Aktiverat som standard; använd--skip-progress-reportsför att inaktivera.)
--prompt=formatsträng- Sätt prompten till det angivna formatet. De specialsekvenser som prompten kan innehålla beskrivs i avsnittet MARIADB-KOMMANDON.
--protocol={TCP|SOCKET|PIPE|MEMORY}- Anslutningsprotokoll som ska användas vid anslutning till servern. Det är användbart när andra anslutningsparametrar normalt skulle få ett annat protokoll att användas än det du vill ha.
--quick,-q- Cachar inte varje frågeresultat, utan skriver ut varje rad när den tas emot. Detta kan göra servern långsammare om utdata pausas. Med detta alternativ använder mariadb inte historikfilen.
--raw,-r- För tabellutdata gör "ramarna" runt kolumner det möjligt att skilja ett kolumnvärde från ett annat. För icke-tabellformat, som produceras i batchläge eller när
--batcheller--silentanvänds, escape-kodas specialtecken i utdata så att de lätt kan identifieras. Radbrytning, tab, NUL och omvänt snedstreck skrivs som\n,\t,\0och\\. Alternativet--rawinaktiverar denna escape-kodning. - Följande exempel visar skillnaden mellan tabellformat och icke-tabellformat samt användningen av råläge för att inaktivera escape-kodning:
% mariadb mariadb> SELECT CHAR(92); +----------+ | CHAR(92) | +----------+ | \ | +----------+ % mariadb -s mariadb> SELECT CHAR(92); CHAR(92) \\ % mariadb -s -r mariadb> SELECT CHAR(92); CHAR(92) \
--reconnect- Om anslutningen till servern bryts, försök automatiskt att återansluta. Ett enda återanslutningsförsök görs varje gång anslutningen förloras. Aktiverat som standard; inaktivera med
--skip-reconnecteller--disable-reconnect.
--safe-updates,--i-am-a-dummy,-U- Tillåt endast sådana
UPDATE- ochDELETE-satser som anger vilka rader som ska ändras genom att använda nyckelvärden. Om du har satt detta alternativ i en alternativfil kan du åsidosätta det genom att använda--safe-updatespå kommandoraden. Se avsnittet MARIADB-TIPS för mer information.
--secure-auth- Skicka inte lösenord till servern i gammalt format (före 4.1.1). Detta förhindrar anslutningar till servrar som använder det äldre lösenordsformatet.
--select-limit=gräns- Ange automatisk gräns för
SELECTnär--safe-updatesanvänds. (Standardvärde är 1 000.)
--server-arg=namn- Skicka
namnsom parameter till den inbäddade servern.
--show-warnings- Gör så att varningar visas efter varje sats om sådana finns. Detta alternativ gäller både interaktivt läge och batchläge.
--sigint-ignore- Ignorera
SIGINT-signaler, vanligtvis resultatet av att trycka Control-C.
--silent,-s- Tyst läge. Producera mindre utdata. Detta alternativ kan anges flera gånger för att producera allt mindre utdata.
- Detta alternativ ger icke-tabellformat för utdata och escape-kodning av specialtecken. Escape-kodning kan inaktiveras med råläge; se beskrivningen av
--raw.
--skip-auto-rehash- Inaktivera automatisk omhashning. Synonym för
--disable-auto-rehash.
--skip-column-names,-N- Skriv inte ut kolumnnamn i resultat.
--skip-line-numbers,-L- Skriv inte ut radnummer för fel. Användbart när du vill jämföra resultatfiler som innehåller felmeddelanden.
--socket=sökväg,-S sökväg- För anslutningar till localhost, Unix-socketfilen som ska användas eller, på Windows, namnet på den named pipe som ska användas. Tvingar
--protocol=socketnär det anges på kommandoraden utan andra anslutningsegenskaper; på Windows tvingar det--protocol=pipe.
--ssl- Aktivera SSL för anslutning. Aktiveras automatiskt med andra flaggor. Inaktivera med
--skip-ssl.
--ssl-ca=namn- CA-fil i PEM-format. Se OpenSSL-dokumentationen. Implicerar
--ssl.
--ssl-capath=namn- CA-katalog. Se OpenSSL-dokumentationen. Implicerar
--ssl.
--ssl-cert=namn- X509-certifikat i PEM-format. Se OpenSSL-dokumentationen. Implicerar
--ssl.
--ssl-cipher=namn- SSL-chiffer som ska användas. Se OpenSSL-dokumentationen. Implicerar
--ssl.
--ssl-key=namn- X509-nyckel i PEM-format. Se OpenSSL-dokumentationen. Implicerar
--ssl.
--ssl-crl=namn- Lista över återkallade certifikat. Se OpenSSL-dokumentationen. Implicerar
--ssl.
--ssl-crlpath=namn- Sökväg till lista över återkallade certifikat. Se OpenSSL-dokumentationen. Implicerar
--ssl.
--ssl-verify-server-cert- Verifiera serverns "Common Name" i dess certifikat mot värdnamnet som används vid anslutning. Detta alternativ är avstängt som standard.
--table,-t- Visa utdata i tabellformat. Detta är standard i interaktivt läge, men kan användas för att få tabellformat även i batchläge.
--tee=filnamn- Lägg till en kopia av utdata i den angivna filen. Detta alternativ fungerar endast i interaktivt läge. Avsnittet MARIADB-KOMMANDON beskriver tee-filer närmare.
--unbuffered,-n- Töm bufferten efter varje fråga.
--user=användarnamn,-u användarnamn- MariaDB-användarnamnet som ska användas vid anslutning till servern.
--verbose,-v- Utförligt läge. Producera mer information om vad programmet gör. Detta alternativ kan anges flera gånger för att få allt mer detaljerad utdata. Till exempel ger
-v -v -vtabellformat även i batchläge.
--version,-V- Visa versionsinformation och avsluta.
--vertical,-E- Skriv ut frågeresultat vertikalt, en rad per kolumnvärde. Utan detta alternativ kan du ange vertikalt utdata för enskilda satser genom att avsluta dem med
\G.
--wait,-w- Om anslutningen inte kan etableras, vänta och försök igen i stället för att avbryta.
--xml,-X- Producera XML-utdata. Utdata när
--xmlanvänds med mariadb motsvarar det som produceras avmariadb-dump --xml. Semariadb-dump(1)för detaljer. - XML-utdata använder också ett XML-namnrymd, som här:
shell> mariadb --xml -uroot -e "SHOW VARIABLES LIKE 'version%'" <?xml version="1.0"?> <resultset statement="SHOW VARIABLES LIKE 'version%'" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <row> <field name="Variable_name">version</field> <field name="Value">5.0.40-debug</field> </row> <row> <field name="Variable_name">version_comment</field> <field name="Value">Source distribution</field> </row> <row> <field name="Variable_name">version_compile_machine</field> <field name="Value">i686</field> </row> <row> <field name="Variable_name">version_compile_os</field> <field name="Value">suse-linux-gnu</field> </row> </resultset>
Du kan också ange följande variabler med syntaxen --variabelnamn=värde:
connect_timeout- Antal sekunder innan anslutningstimeout. (Standardvärde är 0.)
max_allowed_packet- Maximal paketlängd att skicka till eller ta emot från servern. (Standardvärde är 16 MB.)
max_join_size- Den automatiska gränsen för antal rader i en join när
--safe-updatesanvänds. (Standardvärde är 1 000 000.)
net_buffer_length- Buffertstorleken för TCP/IP- och socketkommunikation. (Standardvärde är 16 KB.)
select_limit- Den automatiska gränsen för
SELECT-satser när--safe-updatesanvänds. (Standardvärde är 1 000.)
På Unix skriver mariadb-klienten en historik över körda satser till en historikfil. Som standard heter denna fil .mariadb_history och skapas i din hemkatalog. Av bakåtkompatibilitetsskäl används .mariadb_history om den finns och .mysql_history saknas. För att ange en annan fil, sätt miljövariabeln MARIADB_HISTFILE. Miljövariabeln MYSQL_HISTFILE används om MARIADB_HISTFILE inte finns.
Filen .mariadb_history bör skyddas med restriktiva åtkomsträttigheter eftersom känslig information kan skrivas till den, till exempel SQL-satser som innehåller lösenord.
Om du inte vill ha någon historikfil tar du först bort .mariadb_history om den finns, och använder sedan någon av följande metoder:
- Sätt variabeln
MARIADB_HISTFILEtill/dev/null. För att detta ska gälla varje gång du loggar in kan du lägga in inställningen i någon av skalets startfiler. - Skapa
.mariadb_historysom en symbolisk länk till/dev/null:
shell> ln -s /dev/null $HOME/.mariadb_history
Det behöver du bara göra en gång.
MARIADB-KOMMANDON
mariadb skickar varje SQL-sats du anger till servern för exekvering. Det finns också en uppsättning kommandon som mariadb själv tolkar. För en lista över dessa kommandon, skriv help eller \h vid prompten mariadb>:
mariadb> help List of all MariaDB commands: Note that all text commands must be first on line and end with ';' ? (\?) Synonym for 'help'. clear (\c) Clear command. connect (\r) Reconnect to the server. Optional arguments are db and host. delimiter (\d) Set statement delimiter. edit (\e) Edit command with $EDITOR. ego (\G) Send command to mariadb server, display result vertically. exit (\q) Exit mariadb. Same as quit. go (\g) Send command to mariadb server. help (\h) Display this help. nopager (\n) Disable pager, print to stdout. notee (\t) Don't write into outfile. pager (\P) Set PAGER [to_pager]. Print the query results via PAGER. print (\p) Print current command. prompt (\R) Change your mariadb prompt. quit (\q) Quit mariadb. rehash (\#) Rebuild completion hash. source (\.) Execute an SQL script file. Takes a file name as an argument. status (\s) Get status information from the server. system (\!) Execute a system shell command. tee (\T) Set outfile [to_outfile]. Append everything into given outfile. use (\u) Use another database. Takes database name as argument. charset (\C) Switch to another charset. Might be needed for processing binlog with multi-byte charsets. warnings (\W) Show warnings after every statement. nowarning (\w) Don't show warnings after every statement. For server side help, type 'help contents'
Varje kommando har både en lång och en kort form. Den långa formen är inte skiftlägeskänslig, men den korta är det. Den långa formen kan följas av ett valfritt avslutande semikolon, men den korta formen ska inte göra det.
Kortkommandon inne i fler-radiga kommentarer av typen /* ... */ stöds inte.
help [arg],\h [arg],\? [arg],? [arg]- Visa ett hjälpmeddelande med tillgängliga mariadb-kommandon.
- Om du anger ett argument använder mariadb det som söksträng för att komma åt serversidans hjälp. Se avsnittet MARIADB SERVERSIDIG HJÄLP.
charset teckenuppsättning,\C teckenuppsättning- Ändra standardteckenuppsättningen och utfärda en
SET NAMES-sats. Detta gör att teckenuppsättningen förblir synkroniserad mellan klient och server om mariadb körs med automatisk återanslutning aktiverad, eftersom den angivna teckenuppsättningen används även vid återanslutning.
clear,\c- Rensa aktuell inmatning. Använd detta om du ångrar att du vill köra satsen du håller på att skriva.
connect [db_namn värdnamn],\r [db_namn värdnamn]- Återanslut till servern. Valfria argument för databasnamn och värdnamn kan anges för att specificera standarddatabasen eller värden där servern körs. Om de utelämnas används nuvarande värden.
delimiter sträng,\d sträng- Ändra strängen som mariadb tolkar som separator mellan SQL-satser. Standard är semikolon (
;). - Avgränsaren kan anges som ett citerat eller ociterat argument. Citering kan göras med antingen enkelapostrof (
') eller dubbelcitat ("). För att inkludera ett citationstecken i en citerad sträng kan du antingen omge strängen med den andra typen av citattecken eller escape-koda citattecknet med ett omvänt snedstreck (\). Omvänt snedstreck bör undvikas utanför citerade strängar eftersom det är escape-tecknet i MariaDB. För ett ociterat argument läses avgränsaren fram till första blanktecken eller radslut. För ett citerat argument läses avgränsaren fram till motsvarande citattecken på raden. - När avgränsaren som mariadb känner igen sätts till något annat än standardvärdet
;skickas förekomster av semikolon till servern utan tolkning. Servern själv tolkar dock fortfarande;som satsavgränsare och behandlar satser därefter. Detta påverkar körning av flera satser samt parsning av innehållet i lagrade procedurer och funktioner, triggers och händelser.
edit,\e- Redigera den aktuella inmatningssatsen. mariadb kontrollerar miljövariablerna
EDITORochVISUALför att avgöra vilken editor som ska användas. Standardeditorn ärviom ingen av variablerna är satt. - Kommandot
editfungerar endast på Unix.
ego,\G- Skicka den aktuella satsen till servern för körning och visa resultatet i vertikalt format.
exit,\q- Avsluta mariadb.
go,\g- Skicka den aktuella satsen till servern för körning.
nopager,\n- Inaktivera utdata via pager. Se beskrivningen av
pager. - Kommandot
nopagerfungerar endast på Unix.
notee,\t- Inaktivera kopiering av utdata till tee-filen. Se beskrivningen av
tee.
nowarning,\w- Aktivera visning av varningar efter varje sats.
pager [kommando],\P [kommando]- Aktivera utdata via pager. Genom att använda alternativet
--pagernär du startar mariadb kan du bläddra eller söka i frågeresultat i interaktivt läge med Unix-program somless,moreeller liknande. Om inget värde anges kontrollerar mariadb värdet av miljövariabelnPAGERoch sätter pagern till det. Pager-funktionaliteten fungerar endast i interaktivt läge. - Utdata via pager kan aktiveras interaktivt med kommandot
pageroch inaktiveras mednopager. Kommandot tar ett valfritt argument; om det anges sätts pager-programmet till detta. Utan argument sätts pagern till den pager som angavs på kommandoraden, eller till standardutdata om ingen pager angavs. - Utdata via pager fungerar endast på Unix eftersom funktionen
popen()används, och den finns inte på Windows. På Windows kan alternativetteeanvändas i stället för att spara utdata, även om det inte är lika bekvämt sompagerför att bläddra i resultat.
print,\p- Skriv ut den aktuella satsen utan att köra den.
prompt [sträng],\R [sträng]- Konfigurera om mariadb-prompten till den angivna strängen. Specialsekvenserna som kan användas i prompten beskrivs längre ner i detta avsnitt.
- Om du anger kommandot
promptutan argument återställs prompten till standardvärdetmariadb>.
quit,\q- Avsluta mariadb.
rehash,\#- Bygg om kompletteringshashen som möjliggör komplettering av databas-, tabell- och kolumnnamn medan du skriver satser. Se beskrivningen av alternativet
--auto-rehash.
source filnamn,\. filnamn- Läs den angivna filen och kör satserna i den. På Windows kan sökvägsseparatorer anges som
/eller\\.
status,\s- Visa statusinformation om anslutningen och servern du använder. Om du kör i läget
--safe-updatesskriverstatusäven ut värdena för de mariadb-variabler som påverkar dina frågor.
system kommando,\! kommando- Kör det angivna kommandot med systemets standardkommandotolk.
- Kommandot
systemfungerar endast på Unix.
tee [filnamn],\T [filnamn]- Genom att använda alternativet
--teenär du startar mariadb kan du logga satser och deras utdata. All data som visas på skärmen läggs till i den angivna filen. Detta kan också vara mycket användbart för felsökning. mariadb tömmer resultat till filen efter varje sats, precis innan nästa prompt skrivs ut. Tee-funktionaliteten fungerar endast i interaktivt läge. - Du kan aktivera funktionen interaktivt med kommandot
tee. Utan parameter används den föregående filen. Tee-filen kan inaktiveras med kommandotnotee. Om du körteeigen återaktiveras loggningen.
use db_namn,\u db_namn- Använd
db_namnsom standarddatabas.
warnings,\W- Aktivera visning av varningar efter varje sats, om sådana finns.
Här följer några tips om kommandot pager:
- Du kan använda det för att skriva till en fil så att resultaten endast går till filen:
mariadb> pager cat > /tmp/log.txt
Du kan också skicka alternativ till det program du vill använda som pager:
mariadb> pager less -n -i -S
- I föregående exempel, notera alternativet
-S. Det kan vara mycket användbart när du bläddrar i breda frågeresultat. Ibland är en mycket bred resultatuppsättning svår att läsa på skärmen. Alternativet-Stilllesskan göra den mycket mer lättläst eftersom du kan rulla horisontellt med vänster- och högerpilarna. Du kan också använda-Sinteraktivt ilessför att slå på och av det horisontella bläddringsläget. Mer information finns i manualsidan förless:
shell> man less
- Alternativen
-Foch-Xkan användas medlessför att få programmet att avslutas om utdata ryms på en skärm, vilket är praktiskt när ingen rullning behövs:
mariadb> pager less -n -i -S -F -X
- Du kan ange mycket komplexa pager-kommandon för att hantera frågeutdata:
mariadb> pager cat | tee /dr1/tmp/res.txt \
| tee /dr2/tmp/res2.txt | less -n -i -S
I detta exempel skickas frågeresultaten till två filer i två olika kataloger på två olika filsystem monterade på /dr1 och /dr2, samtidigt som resultaten fortfarande visas på skärmen via less.
Du kan också kombinera funktionerna tee och pager. Om du har en tee-fil aktiverad och pager satt till less kan du bläddra i resultaten med programmet less och samtidigt få allt tillagt i en fil. Skillnaden mellan Unix-programmet tee som används med kommandot pager och det inbyggda kommandot tee i mariadb är att det inbyggda tee fungerar även om Unix-verktyget tee inte finns tillgängligt. Det inbyggda tee loggar också allt som skrivs ut på skärmen, medan Unix-verktyget tee som används med pager inte loggar fullt så mycket. Dessutom kan tee-filloggning slås av och på interaktivt inifrån mariadb. Det är användbart när du vill logga vissa frågor till fil men inte andra.
Kommandot prompt konfigurerar om standardprompten mariadb>. Strängen som definierar prompten kan innehålla följande specialsekvenser:
| Sekvens | Beskrivning |
|---|---|
\c
|
En räknare som ökar för varje sats du utfärdar |
\D
|
Fullständigt aktuellt datum |
\d
|
Standarddatabasen |
\h
|
Servervärden |
\l
|
Aktuell avgränsare |
\m
|
Minuter i aktuell tid |
\n
|
Ny rad |
\O
|
Aktuell månad i trebokstavsformat (Jan, Feb, ...) |
\o
|
Aktuell månad i numeriskt format |
\P
|
am/pm |
\p
|
Aktuell TCP/IP-port eller socketfil |
\R
|
Aktuell tid i 24-timmarsformat (0–23) |
\r
|
Aktuell tid i 12-timmarsformat (1–12) |
\S
|
Semikolon |
\s
|
Sekunder i aktuell tid |
\t
|
Tabulator |
\U
|
Ditt fullständiga kontonamn användarnamn@värdnamn
|
\u
|
Ditt användarnamn |
\v
|
Serverversionen |
\w
|
Aktuell veckodag i trebokstavsformat (Mon, Tue, ...) |
\Y
|
Aktuellt år, fyra siffror |
\y
|
Aktuellt år, två siffror |
\_
|
Ett mellanslag |
\
|
Ett mellanslag (ett mellanslag följer efter omvänt snedstreck) |
\'
|
Enkelapostrof |
\"
|
Dubbelcitat |
\\
|
Ett bokstavligt omvänt snedstreck |
\x
|
x, för alla x som inte listas ovan
|
Du kan ställa in prompten på flera sätt:
- Använd en miljövariabel. Du kan sätta miljövariabeln
MYSQL_PS1till en promptsträng. Till exempel:
shell> export MYSQL_PS1="(\u@\h) [\d]> "
- Använd ett kommandoradsalternativ. Du kan ange alternativet
--promptnär du startar mariadb. Till exempel:
shell> mariadb --prompt="(\u@\h) [\d]> " (user@host) [database]>
- Använd en alternativfil. Du kan ange alternativet
prompti gruppen[mariadb]i en MariaDB-alternativfil, till exempel/etc/my.cnfeller.my.cnfi din hemkatalog. Till exempel:
[mariadb] prompt=(\\u@\\h) [\\d]>\\_
I detta exempel är de omvända snedstrecken dubblerade. Om du sätter prompten med alternativet prompt i en alternativfil är det lämpligt att dubblera omvända snedstreck när du använder de särskilda promptsekvenserna. Det finns viss överlappning mellan tillåtna promptsekvenser och de speciella escape-sekvenser som känns igen i alternativfiler. Det kan orsaka problem om du använder enkla omvända snedstreck. Till exempel tolkas \s som ett mellanslag i stället för som aktuellt sekundvärde. Följande exempel visar hur man definierar en prompt i en alternativfil för att inkludera den aktuella tiden i formatet HH:MM:SS>:
[mariadb] prompt="\\r:\\m:\\s> "
- Sätt prompten interaktivt. Du kan ändra prompten interaktivt med kommandot
prompt(eller\R). Till exempel:
mariadb> prompt (\u@\h) [\d]>\_ PROMPT set to '(\u@\h) [\d]>\_' (user@host) [database]> (user@host) [database]> prompt Returning to default PROMPT of mariadb> mariadb>
MARIADB SERVERSIDIG HJÄLP
mariadb> help söksträng
Om du anger ett argument till kommandot help använder mariadb det som söksträng för serversidans hjälp. För att detta ska fungera måste hjälptabellerna i databasen mysql vara initierade med hjälpinformation.
Om det inte finns någon träff misslyckas sökningen:
mariadb> help me Nothing found Please try to run 'help contents' for a list of all accessible topics
Använd help contents för att se en lista över hjälpkategorier:
mariadb> help contents You asked for help about help category: "Contents" For more information, type 'help <item>', where <item> is one of the following categories: Account Management Administration Data Definition Data Manipulation Data Types Functions Functions and Modifiers for Use with GROUP BY Geographic Features Language Structure Plugins Storage Engines Stored Routines Table Maintenance Transactions Triggers
Om söksträngen matchar flera poster visar mariadb en lista över matchande ämnen:
mariadb> help logs Many help items for your request exist. To make a more specific request, please type 'help <item>', where <item> is one of the following topics: SHOW SHOW BINARY LOGS SHOW ENGINE SHOW LOGS
Använd ett ämne som söksträng för att se hjälpposten för det ämnet:
mariadb> help show binary logs Name: 'SHOW BINARY LOGS' Description: Syntax: SHOW BINARY LOGS SHOW MASTER LOGS Lists the binary log files on the server. This statement is used as part of the procedure described in [purge-binary-logs], that shows how to determine which logs can be purged. mariadb> SHOW BINARY LOGS; +---------------+-----------+ | Log_name | File_size | +---------------+-----------+ | binlog.000015 | 724935 | | binlog.000016 | 733481 | +---------------+-----------+
KÖRA SQL-SATSER FRÅN EN TEXTFIL
Klienten mariadb används vanligtvis interaktivt, så här:
shell> mariadb db_namn
Det går dock också att lägga SQL-satser i en fil och sedan instruera mariadb att läsa indata från den filen. Skapa då en textfil text_fil som innehåller de satser du vill köra. Starta sedan mariadb så här:
shell> mariadb db_namn < text_fil
Om du placerar en USE db_namn-sats först i filen behöver du inte ange databasnamnet på kommandoraden:
shell> mariadb < text_fil
Om du redan kör mariadb kan du köra en SQL-skriptfil med kommandot source eller \.:
mariadb> source filnamn mariadb> \. filnamn
Ibland vill du kanske att skriptet ska visa förloppsinformation för användaren. Då kan du lägga in satser som denna:
SELECT '<info_att_visa>' AS ' ';
Denna sats skriver ut <info_att_visa>.
Du kan också starta mariadb med alternativet --verbose, vilket gör att varje sats visas innan resultatet som den producerar.
mariadb ignorerar Unicode BOM-tecken (byte order mark) i början av indatafiler. Närvaron av en BOM gör inte att mariadb ändrar sin standardteckenuppsättning. För att göra det, starta mariadb med ett alternativ som --default-character-set=utf8.
MARIADB-TIPS
Detta avsnitt beskriver några tekniker som kan hjälpa dig att använda mariadb mer effektivt.
Visa frågeresultat vertikalt
Vissa frågeresultat är mycket lättare att läsa när de visas vertikalt i stället för i vanligt horisontellt tabellformat. Frågor kan visas vertikalt genom att avsluta frågan med \G i stället för semikolon. Till exempel är längre textvärden som innehåller radbrytningar ofta mycket lättare att läsa med vertikal visning:
mariadb> SELECT * FROM mails WHERE LENGTH(txt) < 300 LIMIT 300,1\G
*************************** 1. row ***************************
msg_nro: 3068
date: 2000-03-01 23:29:50
time_zone: +0200
mail_from: Monty
reply: monty@no.spam.com
mail_to: "Thimble Smith" <tim@no.spam.com>
sbj: UTF-8
txt: >>>>> "Thimble" == Thimble Smith writes:
Thimble> Hi. I think this is a good idea. Is anyone familiar
Thimble> with UTF-8 or Unicode? Otherwise, I'll put this on my
Thimble> TODO list and see what happens.
Yes, please do that.
Regards,
Monty
file: inbox-jani-1
hash: 190402944
1 row in set (0.09 sec)
Använda alternativet --safe-updates
För nybörjare är ett användbart startalternativ --safe-updates, eller --i-am-a-dummy, som har samma effekt. Det är till hjälp i situationer där du kanske har skrivit en sats som DELETE FROM tabellnamn men glömt WHERE-villkoret. Normalt skulle en sådan sats radera alla rader i tabellen. Med --safe-updates kan du bara radera rader genom att ange de nyckelvärden som identifierar dem. Detta hjälper till att förhindra misstag.
När du använder alternativet --safe-updates kör mariadb följande sats när anslutningen till MariaDB-servern etableras:
SET sql_safe_updates=1, sql_select_limit=1000, sql_max_join_size=1000000;
SET-satsen har följande effekter:
- Du får inte köra en
UPDATE- ellerDELETE-sats om du inte anger ett nyckelvillkor iWHERE-satsen eller anger enLIMIT-klausul, eller båda. Till exempel:
UPDATE tabellnamn SET icke_nyckelkolumn=värde WHERE nyckelkolumn=värde; UPDATE tabellnamn SET icke_nyckelkolumn=värde LIMIT 1;
- Servern begränsar alla stora
SELECT-resultat till 1 000 rader om inte satsen innehåller enLIMIT-klausul.
- Servern avbryter fler-tabells-
SELECT-satser som sannolikt behöver undersöka mer än 1 000 000 radkombinationer.
För att ange andra gränser än 1 000 och 1 000 000 kan du åsidosätta standardvärdena med alternativen --select-limit och --max-join-size:
shell> mariadb --safe-updates --select-limit=500 --max-join-size=10000
Inaktivera automatisk återanslutning i mariadb
Om klienten mariadb förlorar anslutningen till servern medan en sats skickas försöker den omedelbart och automatiskt återansluta en gång till servern och skicka satsen igen. Men även om mariadb lyckas återansluta har din första anslutning avslutats och alla tidigare sessionsobjekt och inställningar har gått förlorade: temporära tabeller, autocommit-läget samt användardefinierade och sessionsvariabler. Dessutom rullas alla pågående transaktioner tillbaka. Detta beteende kan vara farligt, som i följande exempel där servern stängdes av och startades om mellan den första och andra satsen utan att du visste det:
mariadb> SET @a=1; Query OK, 0 rows affected (0.05 sec) mariadb> INSERT INTO t VALUES(@a); ERROR 2006: MariaDB server has gone away No connection. Trying to reconnect... Connection id: 1 Current database: test Query OK, 1 row affected (1.30 sec) mariadb> SELECT * FROM t; +------+ | a | +------+ | NULL | +------+ 1 row in set (0.05 sec)
Användarvariabeln @a har gått förlorad tillsammans med anslutningen, och efter återanslutningen är den odefinierad. Om det är viktigt att mariadb avslutas med ett fel när anslutningen har gått förlorad kan du starta klienten mariadb med alternativet --skip-reconnect.
UPPHOVSRÄTT
Copyright 2007–2008 MySQL AB, 2008–2010 Sun Microsystems, Inc., 2010–2025 MariaDB Foundation
Denna dokumentation är fri programvara; du får distribuera den vidare och/eller modifiera den endast enligt villkoren i GNU General Public License som publicerats av Free Software Foundation; version 2 av licensen.
Denna dokumentation distribueras i hopp om att den ska vara användbar, men UTAN NÅGON GARANTI; utan ens underförstådd garanti om SÄLJBARHET eller LÄMPLIGHET FÖR ETT VISST ÄNDAMÅL. Se GNU General Public License för mer information.
Du bör ha fått en kopia av GNU General Public License tillsammans med programmet; om inte, skriv till Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA eller se [1].
ANMÄRKNINGAR
- Bug#25946
SE ÄVEN
För mer information, se MariaDB Knowledge Base på [3].
FÖRFATTARE
MariaDB Foundation ([4]).
KOLOFON
Denna sida är en del av projektet MariaDB (MariaDB-databasserver). Information om projektet finns på [5]. Om du har en felrapport för denna manualsida, se [6].
Denna sida hämtades från projektets uppströms Git-repository på [7] den 2026-01-16. Vid den tidpunkten var datumet för den senaste commit som hittades i repositoryt 2026-01-16.
Om du upptäcker renderingsproblem i denna HTML-version av sidan, eller anser att det finns en bättre eller mer uppdaterad källa för sidan, eller har rättelser eller förbättringar av informationen i denna kolofon (som inte är en del av den ursprungliga manualsidan), skicka e-post till man-pages@man7.org.
Sidslut
Orginalhemsidan på Engelska https://man7.org/linux/man-pages/man1/mariadb.1.html
Det här är en maskinöversättning av Linux man sidor till svenska. Om du hittar fel är vi tacksamma om du rapporterar dem via formuläret som finns på
https://www.linux.se/kontaka-linux-se/
Tack till Datorservice som har sponsrat Linux.se med webbhotell.