Several important MySQL directory database directories/var/lib/mysql/configuration file/usr/share/mysql (mysql. server commands and configuration files) related commands/usr/bin (mysqladminmysqldump and other commands) Start the script/etc/rc. d/init. d/(directory of the mysql STARTUP script file) change the logon password. MySQL does not have a password by default. installation is complete.
Several important MySQL Directories
Database directory/var/lib/mysql/
Configuration File/usr/share/mysql (mysql. server command and configuration file)
Related commands/usr/bin (mysqladmin mysqldump and other commands)
Start script/etc/rc. d/init. d/(start script file mysql directory)
Change logon Password
MySQL does not have a password by default. It is self-evident that the password is added after installation.
Command: usr/bin/mysqladmin-u root password 'new-password'
Format: mysqladmin-u username-p old password New password
Example:/usr/bin/mysqladmin-u root password 123456
Start and Stop
Start/etc/init. d/mysql start
Stop/usr/bin/mysqladmin-u root-p shutdown
Auto Start
1) Check whether mysql is in the Auto Start List
[Root@www.linuxidc.com local] #/sbin/chkconfig -- list
2) Add MySQL to the startup Service Group of your system.
[Root@www.linuxidc.com local] #/sbin/chkconfig? Add mysql
3) Delete MySQL from the startup Service Group.
[Root@www.linuxidc.com local] #/sbin/chkconfig? Del mysql
Change MySQL directory
The default data file storage directory of MySQL is/var/lib/mysql. To move the directory to/home/data, perform the following steps:
1. Create a data directory under the home Directory
Cd/home
Mkdir data
2. Stop the MySQL service process:
Mysqladmin-u root-p shutdown
3. Move the entire/var/lib/mysql directory to/home/data
Mv/var/lib/mysql/home/data/to move the MySQL data file to/home/data/mysql.
4. Find the my. cnf configuration file.
If my. for the cnf configuration file, go to/usr/share/mysql/and find *. copy one of the cnf files to/etc/and change it to my. cnf. The command is as follows:
[Root@www.linuxidc.com mysql] # cp/usr/share/mysql/my-medium.cnf/etc/my. cnf
5. Edit the MySQL configuration file/etc/my. cnf.
To ensure that MySQL works properly, you must specify the location where the mysql. sock file is generated. Change socket =/var/lib/mysql. sock to/home/mysql. sock. The procedure is as follows:
Vi my. cnf (use the vi tool to edit the my. cnf file and find the following data to modify)
# The MySQL server
[Mysqld]
Port = 3306
# Socket =/var/lib/mysql. sock)
Socket =/home/data/mysql. sock (add this line)
6. Modify the MySQL STARTUP script/etc/rc. d/init. d/mysql
Finally, you need to modify the MySQL STARTUP script/etc/rc. d/init. d/mysql: change the path on the Right of datadir =/var/lib/mysql to your actual storage path: home/data/mysql.
[Root@www.linuxidc.com etc] # vi/etc/rc. d/init. d/mysql
# Datadir =/var/lib/mysql (comment this row)
Datadir =/home/data/mysql (add this row)
7. Restart the MySQL service.
/Etc/rc. d/init. d/mysql start
Or use the reboot command to restart Linux.
If it works properly, it will succeed. Otherwise, check again against the previous 7 steps.
Common MySQL operations
Note: Each Command in MySQL must end with a semicolon.
1. display the database
Mysql> show databases;
+ ---------- +
| Database |
+ ---------- +
| Mysql |
| Test |
+ ---------- +
2 rows in set (0.04 sec)
Mysql has just been installed with two databases: mysql and test. The mysql database is very important. It contains MySQL system information. We change the password and add new users. In fact, we use the relevant tables in this database for operations.
2. display tables in the database
Mysql> use mysql; (open the database. to operate on each database, open the database, similar to foxpro)
Database changed
Mysql> show tables;
+ ----------------- +
| Tables_in_mysql |
+ ----------------- +
| Columns_priv |
| Db |
| Func |
| Host |
| Tables_priv |
| User |
+ ----------------- +
6 rows in set (0.01 sec)
3. display the data table structure: describe table name;
4. display the records in the table:
Select * from table name;
For example, the user table records in the mysql database are displayed. All users who can operate on MySQL users are in this table.
Select * from user;
5. database creation:
Create database name;
For example, create a database named aaa
Mysql> create databases aaa;
6. Create a table:
Use Database Name;
Create table Name (field setting list );
For example, if you create a table name in the newly created aaa database, the table has four fields: id (serial number, auto-increment), xm (name), xb (gender), and csny (date of birth ).
Use aaa;
Mysql> create table name (id int (3) auto_increment not nullprimary key, xm char (8), xb char (2), csny date );
You can use the describe command to view the created table structure.
Mysql> describe name;
+ ------- + --------- + ------ + ----- + --------- + ---------------- +
| Field | Type | Null | Key | Default | Extra |
+ ------- + --------- + ------ + ----- + --------- + ---------------- +
| Id | int (3) | PRI | NULL | auto_increment |
| Xm | char (8) | YES | NULL |
| Xb | char (2) | YES | NULL |
| Csny | date | YES | NULL |
+ ------- + --------- + ------ + ----- + --------- + ---------------- +
7. Add records
For example, add several related records.
Mysql> insert into name values ('', 'zhang san', 'mal', '1array71-10-01 ');
Mysql> insert into name values ('', 'baiyun ', 'female', '1array72-05-20 ');
The select command can be used to verify the result.
Mysql> select * from name;
+ ---- + ------ + ------------ +
| Id | xm | xb | csny |
+ ---- + ------ + ------------ +
| 1 | Zhang San | male | 1Array71-10-01 |
| 2 | Baiyun | female | 1Array72-05-20 |
+ ---- + ------ + ------------ +
8. Modify records
For example, change the date of birth of John to 1Array71-01-10.
Mysql> update name set csny = '1array71-01-10 'where xm = 'zhang san ';
Array, delete records
For example, delete the records of Michael Jacob.
Mysql> delete from name where xm = 'zhang san ';
10. Delete databases and tables
Drop database name;
Drop table name;
Add MySQL users
Format: grantselect on database. * to username @ login host identified by "password"
Example 1: Add a user user_1 with a password of 123 so that he can log on to any host and have the permission to query, insert, modify, and delete all databases. First, use the root user to connect to MySQL, and then type the following command:
Mysql> grant select, insert, update, delete on *. * touser_1 @ "%" Identified by "123 ";
In example 1, the added user is very dangerous. If you know the user_1 password, then he can log on to your MySQL database on any computer on the Internet and do whatever he wants. For the solution, see Example 2.
Example 2: Add a user_2 password of 123 so that the user can only log on to localhost, you can also query, insert, modify, and delete the database aaa (localhost refers to the local host, that is, the host where the MySQL database is located), so that the user knows the password of user_2, he cannot directly access the database from the Internet, and can only operate the aaa database through the MYSQL host.
Mysql> grant select, insert, update, delete on aaa. * touser_2 @ localhost identified by "123 ";
If a new user cannot log on to MySQL, run the following command during logon:
Mysql-u user_1-p-h 1Array2. 168.113.50 (-h is followed by the IP address of the host to be logged on)
Backup and recovery
1. Backup
For example, back up the aaa library created in the previous example to the back_aaa file.
[Root@www.linuxidc.com root] # cd/home/data/mysql (go to the library directory, this example library has been transferred from val/lib/mysql to/home/data/mysql, see section 7 above)
[Root@www.linuxidc.com mysql] # mysqldump-u root-p -- opt aaa> back_aaa
2. Recovery
[Root@www.linuxidc.net mysql] # mysql-u root-p ccc