mysql常用命令

启动和停止mysql

最基本启动器和停止工具是mysql的bin里面的mysqld,该工具是二进制的,语法为mysqld start或者mysqld stop。如果使用service mysqld start或者bin里面的mysqld_safe启动,本质都是调用了mysqld,只是加了一些其他的处理。

创建和删除用户 

grant all privileges on *.* to it@"%" identified by "itpwd" with grant option; 

grant all privileges on *.* to it@"localhost" identified by "itpwd" with grant option;

据说执行第一条就能任意主机访问了,但是我得执行上面两条才生效。

删除比较简单,drop user it; 

修正:mysql8以后有改动

mysql> CREATE USER 'root'@'%' IDENTIFIED BY 'root';
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
mysql> flush privileges;

建表详细语句

CREATE TABLE `topic` (
  `TopicId` int(50) NOT NULL auto_increment,
  `Topic_BoardId` int(10) NOT NULL,
  `Topic_StudentId` int(10) NOT NULL,
  `TopicTitle` varchar(1000) NOT NULL,
  `TopicContent` varchar(6000) NOT NULL,
  `TopicSendTime` varchar(30) NOT NULL,
  PRIMARY KEY  (`TopicId`),
  FOREIGN KEY (`Topic_BoardId`) REFERENCES `board` (`BoardId`) ON DELETE CASCADE ON UPDATE CASCADE,
  FOREIGN KEY (`Topic_StudentId`) REFERENCES `student` (`StudentId`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=gb2312 

修改密码

mysqladmin -u root -p password 123456

会提示输入旧密码 

导出数据

全库导出

mysqldump -uxxx -pxxx -B dbname > xxx.sql

只导出表结构

mysqldump -uxxx -pxxx -d dbname tablename > xxx.sql

只导出表数据(一个insert)

mysqldump -uxxx -pxxx -t dbname tablename > xxx.sql

只导出表数据(多个insert)

mysqldump -uxxx -pxxx --skip-extended-insert -t dbname tablename > xxx.sql

只导表结构和数据

mysqldump -uxxx -pxxx dbname tablename > xxx.sql

一次导出多个数据库

mysqldump -uxxx -pxxx --databases db1 db2 db3 > xxx.sql

注意:linux下执行这个语句,需要OS的root权限。有时候想用sudo来实现,但是sudo后只让输入一次密码,搞不懂该算是OS的root密码还是mysql的root密码,总之会失败。可以先用sudo执行一条其他的OS语句,输入OS的root密码后root状态会保持一段时间,这段时间内直接执行mysqladmin -u root -p password 123456就行了。

导出csv

select * from table1
INTO OUTFILE 'c:/xxx.csv'
FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"'
LINES TERMINATED BY '/n'

导入csv

LOAD DATA INFILE 'data.txt' INTO TABLE table2
FIELDS TERMINATED BY ',';
;

补充:

cmd下,每次登陆后use xxx和set names xxx很不爽吧

mysql -uxxx -p -h 127.0.0.1 --default-character-set=gbk -D dbName

系统编码参数繁多,担忧default-character-set不等于set names从而导致提交数据乱码?

常规登陆后show variables like 'character%';

+--------------------------+----------------------------------------+
| Variable_name            | Value                                  |
+--------------------------+----------------------------------------+
| character_set_client     | utf8                                    |
| character_set_connection | utf8                                    |
| character_set_database   | utf8                                   |
| character_set_filesystem | binary                                 |
| character_set_results    | utf8                                    |
| character_set_server     | utf8                                   |
| character_set_system     | utf8                                   |
| character_sets_dir       | /wls/data/mysql/my3306/share/charsets/ |
+--------------------------+----------------------------------------+

set names=gbk后

+--------------------------+----------------------------------------+
| Variable_name            | Value                                  |
+--------------------------+----------------------------------------+
| character_set_client     | gbk                                    |
| character_set_connection | gbk                                    |
| character_set_database   | utf8                                   |
| character_set_filesystem | binary                                 |
| character_set_results    | gbk                                    |
| character_set_server     | utf8                                   |
| character_set_system     | utf8                                   |
| character_sets_dir       | /wls/data/mysql/my3306/share/charsets/ |
+--------------------------+----------------------------------------+

登陆时候直接--default-character-set=gbk,完全等价于set names.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值