您当前的位置:首页 > 分类 > 技术资讯 > 数据库 > 正文

MySQL常用操作

发布时间:2016-08-10 15:02:12      来源:51推一把
【摘要】下面简单列举了一些常用的简单操作,当然学会了这些还远远不够,在工作中会遇到更多的知识,通过不断积累,慢慢熟练MySql的各种操作
#更改mysql数据库root的密码

首次进入数据库是不用密码的
/usr/local/mysql/bin/mysql -u root

#退出
mysql> exit

#如何给root用户设定密码?
/usr/local/mysql/bin/mysqladmin -u root password ‘123456’

这样就可以设定root用户的密码了。其中mysqladmin就是用来设置密码的工具,-u 指定用户,passwod 后跟要定义的密码,密码需要用单引号或者双引号括起来。另外你也许发现了,敲命令时总

在前面加/usr/local/mysql/bin/ 这样很累。但是直接打mysql 又不能用,这是因为在系统变量$PATH中没有/usr/local/mysql/bin/这个目录,所以需要这样操作(如果你的linux可以直接打出

mysql这个命令,则不要做这个操作):

vim /etc/profile
在最后加入一行:
export PATH=$PATH:/usr/local/mysql/bin/
保存后运行
source /etc/profile
设定完密码后,再来运行最开始进入mysql数据库操作界面的命令:
mysql -u root -p

#当设定密码后,如果要想更改密码如何操作呢?
mysqladmin -u root -p password "123456789"

#连接数据库
刚刚讲过通过使用mysql -u root -p 就可以连接数据库了,但这只是连接的本地的数据库’localhost’,然后有很多时候都是去连接网络中的某一个主机上的mysql。
mysql -u username -p –P 3306 -h 10.0.2.69
其中-P(大写)指定远程主机mysql的绑定端口,默认都是3306;-h指定远程主机的IP

一些基本的MySQL操作命令

1.查询当前所有的库
mysql> show databases;

2.查询某个库的表
mysql> use dbname;
mysql> show tables;

3.查看某个表的字段
mysql> desc tablename;

4.查看某个表的表结构(创建表时的详细结构)
mysql> show create table tablename;

5.查看当前是哪个用户
mysql> select user();

6.查看当前所在数据库
mysql> select database();

7.创建一个新库
mysql> create database dbname;

8.创建一个表
mysql> create table tablename ( `id` int(4), `name` char(40));

9.查看当前数据库版本
mysql> select version();

10.查看当前系统时间
mysql> select current_date, current_time;

11.查看当前mysql的状态
mysql> show status;

12.查看mysql的参数
mysql> show variables;
很多参数都是可以在/etc/my.cnf中定义的。

13. 创建一个普通用户并授权
mysql> grant all on *.* to user1 identified by 123456;
all 表示所有的权限(读、写、查询、删除等等操作),*.*前面的*表示所有的数据库,后面的*表示所有的表,identified by 后面跟密码,用单引号括起来。这里的user1指的是localhost上的

user1,如果是给网络上的其他机器上的某个用户授权则这样:
mysql> grant all on db1.* to user2@10.0.2.100 identified by 123456;
用户和主机的IP之间有一个@,另外主机IP那里可以用%替代,表示所有主机。例如:
mysql> grant all on db1.* to user3@% identified by 123456;

#一些常用的sql
1.查询语句
mysql> select count(*) from mysql.user;
mysql.user表示mysql库的user表;count(*)表示表中共有多少行。
mysql> select * from mysql.db;
查询mysql库的db表中的所有数据
mysql> select db from mysql.db;
查询mysql库db表的db段。
mysql> select * from mysql.db where host like 10.0.%;
查询mysql库db表host字段like 10.0.% 的行,这里的%表示匹配所有,类似于前面介绍的通配符。

2.插入一行
mysql> insert into db1.t1 values (1, abc);

3.更改某一行
mysql> update db1.t1 set name=aaa where id=1;

4.删除表
mysql> drop table dbname.tablename;

5.删除数据库
mysql> drop database dbname;

6.备份与恢复库
mysqldump -uroot -p mysql >mysql.sql
这里的mysqldump 就是备份的工具了,-p后面的mysql指的是mysql库,把备份的文件重定向到mysql.sql。
如果恢复的话,只要:
mysql -uroot -p mysql < mysql.sql

MySQL官方中文参考手册(5.1)