Difference between revisions of "MySQL"
Jump to navigation
Jump to search
m |
|||
Line 3: | Line 3: | ||
'''Always use mysql "console" instead of "phpmyadmin" for Security reasons!!!''' | '''Always use mysql "console" instead of "phpmyadmin" for Security reasons!!!''' | ||
− | + | ==List Size of all Databases== | |
− | + | Login as mysql user admin | |
+ | do: | ||
<pre> | <pre> | ||
mysql -u admin -p | mysql -u admin -p | ||
Line 15: | Line 16: | ||
</pre> | </pre> | ||
− | Create | + | ==Create new Database== |
<pre> | <pre> | ||
mysql> create database test; | mysql> create database test; | ||
</pre> | </pre> | ||
− | Delete | + | |
+ | ==Delete Database== | ||
<pre> | <pre> | ||
mysql> drop database test; | mysql> drop database test; | ||
</pre> | </pre> | ||
− | + | ||
+ | ==Reload User Privileges== | ||
<pre> | <pre> | ||
mysql> flush privileges; | mysql> flush privileges; | ||
</pre> | </pre> | ||
− | Dump all Databases | + | |
+ | == Dump all Databases== | ||
+ | Note: This do only if you want Restore the same "named" Server, cause MySQL System Databases like "mysql" or "information_schema" are dumped too!! | ||
+ | This will break on other MySQL Servers! | ||
<pre> | <pre> | ||
mysql > mysqldump -u root -p --opt --all-databases > databases-dump-$date.sql | mysql > mysqldump -u root -p --opt --all-databases > databases-dump-$date.sql | ||
</pre> | </pre> | ||
− | + | Remark: It's better you write a Bash Script to dump every Database for its own! This does not scramble a fresh Setup! | |
− | |||
== User Handling == | == User Handling == | ||
<pre> | <pre> |
Revision as of 21:20, 19 May 2017
MySQL commands for the MySQL console
Always use mysql "console" instead of "phpmyadmin" for Security reasons!!!
List Size of all Databases
Login as mysql user admin do:
mysql -u admin -p
at the mysql prompt do:
mysql> SELECT table_schema "Data Base Name", sum( data_length + index_length) / 1024 / 1024 "Data Base Size in MB" FROM information_schema.TABLES GROUP BY table_schema;
Create new Database
mysql> create database test;
Delete Database
mysql> drop database test;
Reload User Privileges
mysql> flush privileges;
Dump all Databases
Note: This do only if you want Restore the same "named" Server, cause MySQL System Databases like "mysql" or "information_schema" are dumped too!! This will break on other MySQL Servers!
mysql > mysqldump -u root -p --opt --all-databases > databases-dump-$date.sql
Remark: It's better you write a Bash Script to dump every Database for its own! This does not scramble a fresh Setup!
User Handling
CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'password'; GRANT ALL PRIVILEGES ON db.* TO ‘user’@'localhost’; UPDATE mysql.user SET Password=PASSWORD('newpassword') WHERE User='username'; FLUSH PRIVILEGES;
List Users
Login to MySQL Console as Admin, go into the System Database called mysql, and list.
mysql -u mysqladminname -p use mysql; select * from mysql.user;
Special Characters Names Users Databases Problems
These Characters can run you into problems cause Signs like Quotes (` ´ ) are NOT DISPLAYED at the mysql Console!
Character Escape Sequence \0 An ASCII NUL (0x00) character. \' A single quote (“'”) character. \" A double quote (“"”) character. \b A backspace character. \n A newline (linefeed) character. \r A carriage return character. \t A tab character. \Z ASCII 26 (Control-Z). See note following the table. \\ A backslash (“\”) character. \% A “%” character. See note following the table. \_ A “_” character. See note following the table.