mysql> update tab1 set>
mysql> update tab1 set name='rose' where> mysql> select * from tab1;
+------+-------+
|> +------+-------+
| 1 | aming |
| 2 | linux |
| 3 | rose |
| 4 | lili |
+------+-------+
4 rows in set (0.00 sec)
## 删除指定行
mysql> delete from tab1 where> mysql> select * from tab1;
+------+-------+
|> +------+-------+
| 1 | aming |
| 2 | linux |
| 3 | rose |
+------+-------+
3 rows in set (0.00 sec)
## 清空数据(不删除表)
mysql> truncate table tab1;
Query OK, 0 rows affected (0.00 sec)
mysql> select * from tab1;
Empty set (0.00 sec)
## 删除表
mysql> drop table tab1;
## 删除库
mysql> drop database db1;
mysql----用户操作
## 创建用户并授权
mysql> grant all on wyydb.* to 'user1'@'192.168.219.128'> ERROR 1044 (42000): Access denied for user 'root'@'192.168.219.128' to database 'wyydb'
###############解决办法##################
##查看当前登录用户
##mysql> select user();
##+----------------------+
##| user() |
##+----------------------+
##| root@192.168.219.128 |
##+----------------------+
##1 row in set (0.00 sec)
##
##退出mysql
##mysql> quit
##
##登录mysql
##[root@wy ~]# mysql -uroot -p123456
##
## 查看当前登录用户
##mysql> select user();
##+----------------+
##| user() |
##+----------------+
##| root@localhost |
##+----------------+
##1 row in set (0.00 sec)
##
## 授权成功
## mysql> grant all on wyydb.* to 'user1'@'192.168.219.128'> ## Query OK, 0 rows affected (0.00 sec)
#############################################
解释说明:
授权其实也是创建新的用户
grant 设置权限
all 表示所有权限
on 指定db.table
to 指定user@host且host可以用%代替表示所有ip(不建议使用,很危险的);192.168.219.%表示这个网段的ip。
identified by '' 设置密码
## 刷新权限
mysql> flush privileges;
解释说明:
创建完用户之后呢,这个权限没有即时生效,因为你的数据可能保存在内存里,还没有到硬盘里,这里需要去刷新一下权限。
## 查看当前数据库进程队列
mysql> show processlist;
+----+------+-----------+------+---------+------+-------+------------------+
|> +----+------+-----------+------+---------+------+-------+------------------+
| 8 | root | localhost | NULL | Query | 0 | NULL | show processlist |
+----+------+-----------+------+---------+------+-------+------------------+
1 row in set (0.00 sec)
解释说明:
数据库若是很忙的话,它会有很多很多地查询,通过这样查询可以获得队列,让我们知道这个数据库具体在干什么,
类似于linux中的ps查看进程一样。
## 查看所有配置参数
mysql> show variables;
解释说明:
这些参数都可以在my.cnf里去定义的
## 筛选信息类似grep
mysql> show variables like '%timeout%';
解释说明:
% 表示通配
## 不重启mysql服务修改配置
mysql> set global max_connections=200;
Query OK, 0 rows affected (0.00 sec)
mysql> show variables like 'max_connections';
+-----------------+-------+
| Variable_name | Value |
+-----------------+-------+
| max_connections | 200 |
+-----------------+-------+
1 row in set (0.00 sec)
解释说明:
如果永久生效还需要更改配置文件my.cnf
## 查看状态
mysql> show status;
## 查看行
mysql> select count(*) from mysql.user;
解释说明:
InnoDB查看行会很慢,不会记录每次执行此语句都会重新遍历一次;
MyISAM查看很快,因为已经提前将总数记录在内容中了;
小提示:
若遇到mysql启动不了,或者其他错误,去查看一下它的日志,日志在/etc/init.d/mysqld这个文件里的datadir里定义了;我们是放在/data/mysql目录下,有一个与hostname同名,以.err结尾的日志文件,可以去查看错误内容,帮助解决问题。