Mysql show tal as binäralternativ
Jag blev inte nere, men det kan bero på honom, vilket innebär att du aldrig borde göra det, i motsats till att säga att det är en dålig idé för det mesta. Jag håller med honom i allmänhet, men inte i 100 fall. Det kan finnas andra överväganden än prestanda. Till exempel arbetar I39m på något nu där prestanda inte spelar någon roll alls. Andra faktorer som centralisering, enkelhet och säkerhetskopiering innebär att i detta fall är lagring i databasen meningsfull. En annan vanlig orsak är replikation. ndash YeB Feb 15 13 kl 12:28 Å andra sidan lagring av data i db är OS-oberoende, vilket kan vara trevligt för konstiga filnamn. db kan lagra flera filer med samma filnamn, OS kan inte. Det har inga readwritedelete problem. Det behöver inte ett extra backup-system. Och det är inte offentligt. Så ibland är det snabbt i utveckling. Btw. ingen tvingar dig att lagra allt i samma databas, i slutändan hamnar allt på en disk. ndash Joeri dec 9 13 kl 16:02 Det beror på de uppgifter du vill lagra. Ovanstående exempel använder LONGBLOB datatyp, men du bör vara medveten om att det finns andra binära dataformat: TINYBLOBBLOBMEDIUMBLOBLONGBLOB VARBINARY BINARY Var och en har sina användarfall. Om det är en känd (kort) längd (t ex packad data) fungerar ofta BINARY eller VARBINARY. De har den extra fördelen av att kunna tona index på dem. svarade 31 dec 10 kl 1:04 Medan det inte skulle vara nödvändigt kan du prova base64-kodningsdata i och avkoda det. Det betyder att db kommer bara ha ascii-tecken. Det kommer att ta lite mer utrymme och tid, men eventuellt problem med binärdata kommer att elimineras. besvarade 16 september 08 kl 4:07 Frågan uppstår också hur man får uppgifterna i BLOB. Du kan sätta data i ett INSERT-meddelande, som PHP-exemplet visar (även om du ska använda mysqlrealescapestring istället för addslashes). Om filen finns på databasservern kan du också använda MySQLs LOADFILE svarat Aug 27 08 kl. 15:13 Om det inte-rekommenderade BLOB-fältet finns, kan du spara data på detta sätt: Idén hämtad härifrån. svarat 12 sep 13 kl 12.00 En mycket bättre lagringsimplementering tillgänglig här. Du kommer att lösa problem med Florians implementation. svarat den 17 september 08 kl 9:53 När jag behöver lagra binär data använder jag alltid VARBINARY-format, som introducerades byd0nut. Du hittar dokumentation på MySQL-webbplatsen under dokumentat ämne. 12.4.2 BINARY OCH VARBINARY Types Om du frågar vad som är advantagese, vänligen kolla på varför varbinary-instead-of-varchar svarade 1 maj 14 kl 9:37 du kan lagra Detta i en BLOB-datatyp. Detta är mycket användbart. svarat 31 juli 16 kl 15:32 2017 Stack Exchange, IncMySQL Datatyper Sammanfattning: I denna handledning lär du dig information om MySQL-datatyper och hur du använder dem effektivt vid design av databas i MySQL. En databas tabell innehåller flera kolumner med specifika datatyper som numerisk eller sträng. MySQL tillhandahåller fler datatyper än bara numeriska eller strängar. Varje datatyp i MySQL kan bestämmas av följande egenskaper: Den typ av värden den representerar. Utrymmet som tar upp och om värdena är en fast längd eller en variabel längd. Värdena för datatypen kan indexeras eller inte. Hur MySQL jämför värdena för en viss datatyp. Numeriska datatyper Du kan hitta alla SQL-standardtypstyper i MySQL inklusive exakt nummerdatatyp och ungefärliga numeriska datatyper inklusive heltal, fixpunkt och flytpunkt. Dessutom stöder MySQL även BIT-datatyp för lagring av bitfältvärden. Numeriska typer kan signeras eller unsigned utom BIT-typen. I följande tabell visas sammanfattningen av numeriska typer i MySQL: Ett mycket litet heltal Ett litet heltal Ett mellanspråkigt heltal Ett standard heltal Ett stort heltal Ett fast punktnummer En enkel precision flytpunkt En dubbel precision flytpunkt Boolean datatyp MySQL har inte inbyggd BOOLEAN eller BOOL datatyp. Därför använder den den minsta heltalstypen, TINYINT (1) för att representera booleska. Med andra ord, BOOLEAN och BOOL är synonymer för TINYINT (1). Stringdatatyper I MySQL kan en sträng rymma allt från vanlig text till binära data som bilder och filer. Strängen kan jämföras och sökas baserat på mönster matchning med hjälp av LIKE-operatören. vanligt uttryck. och fulltextsökning. I följande tabell visas strängdatatyperna i MySQL: Visa ett hjälpmeddelande och avsluta. Aktivera automatisk omhushållning. Det här alternativet är aktiverat som standard, vilket gör det möjligt att slutföra databas-, tabell - och kolumnnamn. Använd - disable-auto-rehash för att inaktivera rehashing. Det gör att mysql startar snabbare, men du måste utfärda rehash-kommandot eller dess genväg om du vill använda namnet. För att fylla i ett namn, skriv in den första delen och tryck på Tab. Om namnet är otvetydigt, fyller mysql det. Annars kan du trycka på Tab igen för att se de möjliga namnen som börjar med det du har skrivit hittills. Slutförandet sker inte om det inte finns någon standarddatabas. Den här funktionen kräver en MySQL-klient som är sammanställd med läsarkivet. Vanligtvis är läsarkivet inte tillgängligt på Windows. Orsakets resultatuppsättningar visas vertikalt om de är för breda för det aktuella fönstret, och använder annars normalt tabellformat. (Detta gäller uttalanden som avslutas av eller G.) Skriv ut resultat med fliken som kolumnavskiljare, med varje rad på en ny rad. Med det här alternativet använder mysql inte historikfilen. Batch-läget resulterar i icke-tabellformat utmatningsformat och flykt av specialtecken. Escaping kan avaktiveras med hjälp av råmodus, se beskrivningen för alternativet --raw. Det här alternativet hjälper när du bearbetar mysqlbinlog-utdata som kan innehålla BLOB-värden. Som standard översätter mysql rn i uttalande strängar till n och tolkar 0 som uttalande terminator. - binärt läge avaktiverar båda funktionerna. Det inaktiverar också alla mysql-kommandon utom charset och avgränsare i icke-interaktivt läge (för inmatning piped till mysql eller laddad med källkommandot). På en dator med flera nätverksgränssnitt använder du det här alternativet för att välja vilket gränssnitt som ska användas för anslutning till MySQL-servern. Skriv kolumnnamn i resultat. Visa resultatuppsättningsmetadata. Vare sig att bevara kommentarer i uttalanden som skickas till servern. Standardinställningen är - skip-kommentarer (kassera kommentarer), aktivera med - kommentarer (bevara kommentarer). Från MySQL 5.7.7 skickar mysql-klienten alltid optimeringshints till servern, oavsett om det här alternativet ges. För att säkerställa att optimeringshints inte avlägsnas om du använder en äldre version av mysql-klienten med en version av servern som förstår optimeringshints, anropa mysql med alternativet - kommentarer. Komprimera all information som skickas mellan klienten och servern om både stödkomprimering. Ange till servern att klienten kan hantera sandboxläget om det konto som används för att ansluta har ett löptid för lösenord. Detta kan vara användbart för noninteractive invocations av mysql eftersom vanligtvis servern kopplar bort icke-interna klienter som försöker ansluta med ett konto med ett löptid som löper ut. (Se avsnitt 7.3.7, lösenordsutgång och sandlådsläge.) Det här alternativet har lagts till i MySQL 5.7.2. Databasen att använda. Detta är användbart huvudsakligen i en alternativfil. Skriv en felsökningslogga. En typisk debugoptions-sträng är d: t: o, filnamn. Standardvärdet är d: t: o, tmpmysql. trace. Det här alternativet är endast tillgängligt om MySQL byggdes med hjälp av WITHDEBUG. MySQL-utgåva binärer som tillhandahålls av Oracle byggs inte med det här alternativet. Skriv ut en del felsökningsinformation när programmet avslutas. Skriv ut felsökningsinformation och minnes - och CPU-användarstatistik när programmet avslutas. En antydan om klientens autentiseringsprogram för användning. Se avsnitt 7.3.8, Pluggbar autentisering. Använd charsetname som standard teckenuppsättning för klienten och anslutningen. Det här alternativet kan vara användbart om operativsystemet använder en teckenuppsättning och mysql-klienten använder som standard en annan. I det här fallet kan utmatningen formateras felaktigt. Du kan vanligtvis lösa sådana problem genom att använda det här alternativet för att tvinga klienten att använda systemteckenuppsättningen istället. Läs den här alternativfilen efter den globala alternativfilen men (på Unix) före användarfilen. Om filen inte existerar eller annars är otillgänglig uppstår ett fel. Filnamnet tolkas relativt den aktuella katalogen om den anges som ett relativ söknamn i stället för ett fullständigt söknamn. Använd endast den angivna alternativfilen. Om filen inte existerar eller annars är otillgänglig uppstår ett fel. Filnamnet tolkas relativt den aktuella katalogen om den anges som ett relativ söknamn i stället för ett fullständigt söknamn. Undantag: Även med - default-fil. klientprogram läser. mylogin. cnf. Läs inte bara de vanliga alternativgrupperna, utan också grupper med de vanliga namnen och ett suffix av str. Mysql läser till exempel normalt klient - och mysql-grupperna. Om alternativet - defaults-group-suffixother ges, läser mysql också clientother och mysqlother-grupperna. Ställ in avkänningsavgränsaren. Standardvärdet är semikolonteckenet (). Inaktivera namngivna kommandon. Använd endast formuläret, eller använd namngivna kommandon bara i början av en rad som slutar med en semikolon (). mysql startar med detta alternativ aktiverat som standard. Men även med det här alternativet fungerar kommandon med långformat fortfarande från första raden. Se avsnitt 5.5.1.2, mysql-kommandon. Utför uttalandet och avsluta. Standardutmatningsformatet är som det som produceras med - batch. Se avsnitt 5.2.4, Använda alternativ på kommandoraden. för några exempel. Med det här alternativet använder mysql inte historikfilen. Fortsätt även om ett SQL-fel uppstår. En kolonnseparerad lista över en eller flera mönsterspecifika uttalanden för att ignorera för loggningsändamål. Dessa mönster läggs till i standardmallistan (IDENTIFIED: PASSWORD). Värdet som anges för detta alternativ påverkar loggningen av uttalanden som är skrivna till historikfilen och till syslog om alternativet --syslog ges. Mer information finns i avsnitt 5.5.1.3, mysql Logging. Anslut till MySQL-servern på den angivna värden. Producera HTML-utdata. Ignorera mellanslag efter funktionsnamn. Effekten av detta beskrivs i diskussionen för IGNORESPACE SQL-läget (se avsnitt 6.1.8, Server SQL-lägen). SQL-stämning som ska utföras efter anslutning till servern. Om automatisk återanslutning är aktiverad utförs uttalandet igen efter återkoppling sker. Skriv radnummer för fel. Inaktivera detta med - skip-line-nummer. Aktivera eller inaktivera LOCAL kapacitet för LOAD DATA INFILE. Med inget värde gör alternativet LOCAL. Alternativet kan anges som - local-infile0 eller --local-infile1 för att uttryckligen inaktivera eller aktivera LOCAL. Aktivering av LOCAL har ingen effekt om servern inte stöder den också. Läs alternativ från den angivna inloggningsbanan i filen. mylogin. cnf inloggningsväg. En inloggningsväg är en alternativgrupp som innehåller alternativ som anger vilken MySQL-server som ska anslutas till och vilket konto som ska verifieras som. För att skapa eller ändra en inloggningsvägsfil, använd verktyget mysqlconfigeditor. Se avsnitt 5.6.6, mysqlconfigeditor MySQL Configuration Utility. Aktivera namngivna mysql-kommandon. Långformatkommandon är tillåtna, inte bara kortformatkommandon. Till exempel, sluta och q är båda igenkända. Använd kommandon - skip-named-kommandon för att inaktivera namngivna kommandon. Se avsnitt 5.5.1.2, mysql-kommandon. Detta har samma effekt som - skip-auto-rehash. Se beskrivningen för --auto-rehash. Ringa inte när fel uppstår. Läs inte några alternativfiler. Om programstart misslyckas på grund av att du läser okända alternativ från en alternativfil, kan inga standardvärden användas för att förhindra att de läses. Undantaget är att filen. mylogin. cnf, om den existerar, läses i alla fall. Detta gör det möjligt att ange lösenord på ett säkrare sätt än på kommandoraden, även när - no-standard används. (.mylogin. cnf skapas av mysqlconfigeditor-verktyget. Se avsnitt 5.6.6, mysqlconfigeditor MySQL Configuration Utility.) Ignorera uttalanden förutom de som inträffar medan standarddatabasen är den som heter på kommandoraden. Detta alternativ är rudimentärt och bör användas med försiktighet. Uttalande filtrering baseras endast på USE-uttalanden. Ursprungligen utför mysql uttalanden i inmatningen eftersom att ange en databas dbname på kommandoraden motsvarar att infoga USE dbname i början av inmatningen. Sedan uppträder mysql för eller förkastar följande uttalanden beroende på om databasen heter den på kommandoraden. Innehållet i uttalandena är oumbärligt. Antag att mysql åberopas för att behandla denna uppsättning uttalanden: Om kommandoraden är mysql --force --on-database db1. mysql hanterar ingången enligt följande: DELETE-satsen utförs eftersom standarddatabasen är db1. även om uttalandet heter ett bord i en annan databas. DROP TABLE och CREATE TABLE-förklaringarna utförs inte eftersom standarddatabasen inte är db1. även om påståenden heter ett bord i db1. INSERT och CREATE TABLE-meddelandena körs eftersom standarddatabasen är db1. även om CREATE TABLE-anteckningen namnger en tabell i en annan databas. Använd det angivna kommandot för sökning av sökfrågor. Om kommandot utelämnas är standardsökaren värdet av din PAGER-miljövariabel. Giltiga personsökare är mindre. Mer . cat gt filnamn. och så vidare. Det här alternativet fungerar bara på Unix och endast i interaktivt läge. För att avaktivera personsökning, använd - skip-personsökare. Avsnitt 5.5.1.2, MySQL-kommandon. diskuterar utgående personsökning ytterligare. Lösenordet som ska användas när du ansluter till servern. Om du använder det korta alternativet formuläret (-p) kan du inte ha ett mellanslag mellan alternativet och lösenordet. Om du släpper lösenordet efter alternativet --password eller - p på kommandoraden, frågar mysql för en. Ange ett lösenord på kommandoraden bör anses vara osäker. Se avsnitt 7.1.2.1, slutanvändarriktlinjer för lösenordsäkerhet. Du kan använda en alternativfil för att undvika att ge lösenordet på kommandoraden. På Windows, anslut till servern med ett namngivet rör. Det här alternativet gäller endast om servern stöder namngivna anslutningar. Den katalog där du ska leta efter plugins. Ange det här alternativet om alternativet --default-auth används för att ange ett autentiseringsprogram, men mysql kan inte hitta det. Se avsnitt 7.3.8, Pluggbar autentisering. TCPIP-portnumret som ska användas för anslutningen. Skriv ut programnamnet och alla alternativ som det kommer från alternativfiler. Ställ in prompten till det angivna formatet. Standardvärdet är mysqlgt. De speciella sekvenser som prompten kan innehålla beskrivs i avsnitt 5.5.1.2, mysql-kommandon. Anslutningsprotokollet för att ansluta till servern. Det är användbart när de andra anslutningsparametrarna normalt skulle leda till att ett protokoll används annat än det du vill ha. För detaljer om tillåtna värden, se Avsnitt 5.2.2, Ansluta till MySQL-servern. Cache inte varje sökresultat, skriv ut varje rad som den har tagits emot. Detta kan sakta ner servern om utmatningen är avstängd. Med det här alternativet använder mysql inte historikfilen. För tabellutmatning gör det möjligt att skilja mellan ett kolumnvärde från en annan i rutan runt kolumner. För nontabulär utgång (som produceras i batchläge eller när batch eller - silent-alternativet ges), släpps specialtecken i utgången så att de lätt kan identifieras. Newline, flik, NUL. och backslash är skrivna som n. t. 0. och. Alternativet --raw stänger av att denna karaktär flyr. Följande exempel visar tabulär kontra nontabulär utgång och användningen av råläge för att inaktivera flykt: Om anslutningen till servern går vilse försöker du automatiskt ansluta igen. Ett enda återkopplingsförsök görs varje gång anslutningen går förlorad. För att undertrycka återkopplingsbeteende, använd - skip-återansluta. Tillåt endast de UPDATE - och DELETE-deklarationerna som anger vilka rader som ska ändras genom att använda nyckelvärden. Om du har ställt in det här alternativet i en alternativfil kan du åsidosätta det genom att använda --safe-uppdateringar på kommandoraden. Se avsnitt 5.5.1.6, mysql Tips. för mer information om detta alternativ. Skicka inte lösenord till servern i gammalt format (före 4,1). Detta förhindrar anslutningar förutom servrar som använder det nya lösenordet format. Som av MySQL 5.7.5 avlägsnas det här alternativet och kommer att tas bort i en framtida MySQL-utgåva. Det är alltid aktiverat och försöker inaktivera det (- skip-secure-auth. - secure-auth0) ger ett fel. Innan MySQL 5.7.5 är det här alternativet aktiverat som standard men kan inaktiveras. Lösenord som använder förhöjningsmetoden före 4.1 är mindre säkra än lösenord som använder den metod som används för inbyggd lösenordshastighet och bör undvikas. Pre-4.1-lösenord avlägsnas och stöd för dem tas bort i MySQL 5.7.5. För anvisningar för uppgradering av konto, se Avsnitt 7.5.1.3, Migrera bort från Pre-4.1 Password Hashing och mysqloldpassword-plugin. Sökvägen till en fil som innehåller serverns RSA-nyckel. Filen måste vara i PEM-format. Den allmänna nyckeln används för RSA-kryptering av klientlösenordet för anslutningar till servern som görs med konton som autentiserar med sha256password plugin. Det här alternativet ignoreras för klientkonton som inte autentiserar med det plugin. Det ignoreras också om lösenordskryptering inte behövs, vilket är fallet när klienten ansluter till servern med en SSL-anslutning. Servern skickar den offentliga nyckeln till klienten efter behov, så det är inte nödvändigt att använda det här alternativet för att RSA-lösenords kryptering ska uppstå. Det är mer effektivt att göra det eftersom servern inte behöver skicka nyckeln. För ytterligare diskussioner angående användning av sha256password plugin, inklusive hur man får RSA public key, se Avsnitt 7.5.1.4, SHA-256 Authentication Plugin. Det här alternativet är endast tillgängligt om MySQL byggdes med OpenSSL. På Windows, det delade minnesnamnet som ska användas, för anslutningar som görs med hjälp av delat minne till en lokal server. Standardvärdet är MYSQL. Det delade minnesnamnet är skiftlägeskänsligt. Servern måste startas med alternativet - Delat minne för att aktivera anslutningar med delat minne. Orsak varningar som ska visas efter varje uttalande om det finns några. Det här alternativet gäller interaktivt och batch-läge. Ignorera SIGINT-signaler (vanligtvis resultatet av att skriva ControlC). Tyst läge. Producera mindre produktion. Detta alternativ kan ges flera gånger för att producera mindre och mindre resultat. Det här alternativet resulterar i nontabulärt utdataformat och flykt av specialtecken. Escaping kan avaktiveras med hjälp av råmodus, se beskrivningen för alternativet --raw. Skriv inte kolumnnamn i resultat. Skriv inte radnummer för fel. Användbar när du vill jämföra resultatfiler som innehåller felmeddelanden. För anslutningar till localhost. Unix-socketfilen som ska användas, eller, på Windows, namnet på det angivna röret som ska användas. Alternativ som börjar med --ssl anger om du vill ansluta till servern med SSL och ange var du ska hitta SSL-nycklar och certifikat. Se avsnitt 7.4.5, Kommandoalternativ för säkra anslutningar. Det här alternativet får mysql att skicka interaktiva uttalanden till systemloggningsfaciliteten. På Unix är detta syslog på Windows, det är Windows Event Log. Destinationen där loggade meddelanden visas är beroende av systemet. På Linux är destinationen ofta varlogmessages filen. Här är ett urval av produktion som genereras på Linux genom att använda --syslog. Denna utmatning är formaterad för läsbarhet varje loggat meddelande tar faktiskt en enda rad. Alternativet --syslog läggs till i MySQL 5.7.1. Visningsutgång i tabellformat. Detta är standard för interaktiv användning, men kan användas för att producera tabellutmatning i batchläge. Lägg till en kopia av utdata till den angivna filen. Det här alternativet fungerar endast i interaktivt läge. Avsnitt 5.5.1.2, MySQL-kommandon. diskuterar tee-filer ytterligare. De protokoll som klienten tillåter för krypterade anslutningar. Värdet är en kommaseparerad lista som innehåller ett eller flera protokollnamn. De protokoll som kan namnges för detta alternativ beror på SSL-biblioteket som används för att kompilera MySQL. För detaljer, se Avsnitt 7.4.3, Säkra anslutningsprotokoll och kodare. Detta alternativ har lagts till i MySQL 5.7.10. Spola bufferten efter varje fråga. MySQL användarnamnet som ska användas när du ansluter till servern. Verbose-läge. Producera mer produktion om vad programmet gör. Detta alternativ kan ges flera gånger för att producera mer och mer utdata. (Till exempel, - v - v - v producerar tabellutmatningsformat även i batchläge.) Visa versionsinformation och avsluta. Skriv ut utfrågningsraderna vertikalt (en rad per kolumnvärde). Utan det här alternativet kan du ange vertikal utmatning för enskilda uppgifter genom att säga upp dem med G. Om anslutningen inte kan etableras, vänta och försök istället för att avbryta. Producera XML-utdata. Utmatningen när - xml används med mysql matchar den för mysqldump - xml. Se avsnitt 5.5.4, mysqldump Ett databas backupprogram för detaljer. XML-utgången använder också en XML-namnrymd, som visas här: Du kan också ställa in följande variabler med hjälp av - varnamnvärde. Antal sekunder före anslutningstiden. (Standardvärdet är 0.) Buffertens maximala storlek för kundserverkommunikation. Standardvärdet är 16 MB, högst 1 GB. Den automatiska gränsen för rader i ett sammanhang när du använder - säkra uppdateringar. (Standardvärdet är 1.000.000.) Buffertstorleken för TCPIP och socket-kommunikation. (Standardvärdet är 16KB.) Den automatiska gränsen för SELECT-satser vid användning av - safe-uppdateringar. (Standardvärdet är 1 000.)
Comments
Post a Comment