mysql命令行操作

一、从命令行登录MySQL数据库服务器
1、登录使用默认3306端口的MySQL
/usr/local/webserver/mysql/bin/mysql -u root -p

2、通过TCP连接管理不同端口的多个MySQL(注:MySQL4.1以上版本才有此项功能)
/usr/local/webserver/mysql/bin/mysql -u root -p --protocol=tcp --host=localhost --port=3306

3、通过socket套接字管理不同端口的多个MySQL
/usr/local/webserver/mysql/bin/mysql -u root -p --socket=/tmp/mysql.sock

4、通过端口和IP管理不同端口的多个MySQL
/usr/local/webserver/mysql/bin/mysql -u root -p -P 3306 -h 127.0.0.1

二、数据库操作SQL语句
1、显示服务器上当前存在什么数据库
SHOW DATABASES;

2、创建名称为maps的数据库
CREATE DATABASE maps;

3、删除名称为maps的数据库
DROP DATABASE maps;

4、选择maps数据库
USE maps;


5、查看当前主机的运行情况
SHOW FULL PROCESSLIST;

三、数据库中表操作SQL语句
1、显示当前数据库中列表
SHOW TABLES;

2、创建数据库表maps_user:存储引擎为MYISAM,字段uid为主键、唯一索引。
CREATE TABLE `maps_user` (
`uid` INT( 5 ) UNSIGNED NOT NULL AUTO_INCREMENT ,
`username` VARCHAR( 20 ) NOT NULL ,
`password` CHAR( 32 ) NOT NULL ,
`dateline` INT(10) NOT NULL ,
PRIMARY KEY ( `uid` )
) ENGINE = MYISAM ;


3、查看maps_user表结构
DESCRIBE maps_user; // DESC maps_user;

4、从表中检索信息
4.1、从maps_user表中检索所有记录
SELECT * FROM maps_user;

4.2、从maps_user表中检索特定的行:字段username等于abc,按字段id降序排列
SELECT * FROM maps_user WHERE username = 'wan' ORDER BY id DESC;

4.3、从maps_user表中检索指定的字段:username和password
SELECT username, password FROM maps_user;

4.4、从maps_user表中检索出唯一的不重复记录:
SELECT DISTINCT username FROM maps_user;

5、插入信息到maps_user表
INSERT INTO maps_user (id, username, password, dateline) VALUES ('', 'wan', '123456', '1234231231');

6、更新maps_user表中的指定信息
UPDATE maps_user SET password = '123123' WHERE id = 12;

7、批量替换的SQL语句(将字符串aaa批量替换为bbb的SQL语句)
UPDATE 表名 SET 字段名 = REPLACE (字段名, 'aaa', 'bbb');
UPDATE maps_user SET dateline = REPLACE (dateline, '12231231', '126657333');


8、删除maps_user表中的指定记录
DELETE FROM maps_user WHERE id = 12;

9、清空maps_user表
DELETE FROM maps_user; 或 TRUNCATE maps_user;

10、删除maps_user表
DROP TABLE maps_user;

11、更改表结构,将maps_user表username字段的字段类型改为CHAR(25)
ALTER TABLE maps_user CHANGE username username CHAR(25);

12、导入.sql文件到mysql中
/usr/local/webserver/mysql/bin>mysql  -u  用户名 -p  数据库名  <   ./maps.sql    (将当前目录下的mysql.sql导入数据库) 或:SOURCE ./mysql.sql;
例如:
/usr/local/webserver/mysql/bin>mysql -u root -p test < ./maps.sql
Enter password: ****

13、UPDATE多表更新:
MySQL语法: UPDATE tablename SET col_name1=expr1 [, col_name2=expr2 ...] [WHERE where_definition]
MySQL示例: UPDATE tablea a, table b SET a.uid= b.uid, a.username= b.username WHERE a.id=b.id


14、对SQL语句的分析(DESC/EXPLAIN )
EXPLAIN SELECT * FROM maps_user WHERE username = 'wan' ORDER BY id DESC;

四、数据库权限操作SQL语句
1、创建一个具有root权限,可从任何IP登录的用户ctowoo,密码为123456
GRANT ALL PRIVILEGES ON *.* TO 'ctowoo'@'%' IDENTIFIED BY '123456';

2、创建一个具有“数据操作”、“结构操作”权限,只能从192.168.122.***登录的用户ctowoo,密码为123456
GRANT SELECT , INSERT , UPDATE , DELETE , FILE , CREATE , DROP , INDEX , ALTER , CREATE TEMPORARY TABLES , CREATE VIEW , SHOW VIEW , CREATE ROUTINE, ALTER ROUTINE, EXECUTE ON *.* TO 'ctowoo'@'192.168.122.%' IDENTIFIED BY '123456';

3、创建一个只拥有“数据操作”权限,只能从192.168.122.24登录,只能操作maps数据库的maps_user表的用户ctowoo,密码为123456
GRANT SELECT , INSERT , UPDATE , DELETE ON  maps.maps_user TO 'ctowoo'@'192.168.122.24' IDENTIFIED BY '123456';

4、创建一个拥有“数据操作”、“结构操作”权限,可从任何IP登录,只能操作maps数据库的用户ctowoo,密码为123456
GRANT SELECT , INSERT , UPDATE , DELETE , CREATE , DROP , INDEX , ALTER , CREATE TEMPORARY TABLES , CREATE VIEW , SHOW VIEW , CREATE ROUTINE, ALTER ROUTINE, EXECUTE ON rewin.* TO 'ctowoo'@'%' IDENTIFIED BY '123456';

5、删除用户
DROP USER 'ctowoo'@'%';

你好!对于 MySQL命令行操作,有很多常用的命令可以使用。以下是一些常见的 MySQL 命令: 1. 连接到 MySQL 服务器: ``` mysql -u <username> -p ``` 其中,`<username>` 是你的用户名。输入该命令后,系统会提示你输入密码。 2. 显示所有数据库: ``` SHOW DATABASES; ``` 3. 创建数据库: ``` CREATE DATABASE <database_name>; ``` 这将创建一个名为 `<database_name>` 的数据库。 4. 切换数据库: ``` USE <database_name>; ``` 使用该命令后,你将进入 `<database_name>` 数据库,并在之后的操作中默认使用该数据库。 5. 显示所有表: ``` SHOW TABLES; ``` 6. 创建表: ``` CREATE TABLE <table_name> ( <column_name1> <data_type1>, <column_name2> <data_type2>, ... ); ``` 这将创建一个名为 `<table_name>` 的表。你可以根据需要定义表中的列及其数据类型。 7. 插入数据: ``` INSERT INTO <table_name> (<column1>, <column2>, ...) VALUES (<value1>, <value2>, ...); ``` 使用该命令可以向表中插入数据。 8. 查询数据: ``` SELECT <columns> FROM <table_name> WHERE <condition>; ``` 使用该命令可以从表中检索数据。你需要替换 `<columns>` 为要查询的列名,`<table_name>` 为表名,`<condition>` 为查询条件。 9. 更新数据: ``` UPDATE <table_name> SET <column1>=<value1>, <column2>=<value2>, ... WHERE <condition>; ``` 使用该命令可以更新表中的数据。 10. 删除数据: ``` DELETE FROM <table_name> WHERE <condition>; ``` 使用该命令可以删除表中符合条件的数据。 这些是一些常用的 MySQL 命令行操作。希望对你有帮助!如有任何问题,请随时提问。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值