1.更改MySQL数据库的root密码
2.连接数据库
3.MySQL基本操作的常用命令
4.常用的SQL语句
5.MySQL 数据库的备份与恢复
常用MySQL操作
1.更改MySQL数据库的root密码
首次进入数据库不用密码,如下
# /usr/local/mysql/bin/mysql -uroot Welcome ... ... mysql> //exit或quit退出
把/usr/local/mysql/bin加入环境变量PATH中,如下
# PATH=$PATH:/usr/local/mysql/bin //重启Linux系统会失效,所以写入开机加载的环境变量文件里 # echo "PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile # source /etc/profile # mysql -uroot ... mysql>
root设置密码
# mysqladmin -uroot password '123456' warning: Using a password on the command line interface canbe insecure. //提示在命令行下暴露了密码,不安全
登录
# mysql -uroot -p'123456' //-p后面不能有空格,不加单引号有特殊符号的密码会报错,-p后不接密码为交互式输入密码 ... mysql>
2.连接数据库
连接(远程)数据库
# mysql -uroot -p -h192.168.188.128 -P3306
3.MySQL基本操作的常用命令
3.1 查询当前库
mysql> show database;
3.2 查询某个库的表
mysql> use mysql; mysql> show tables;
3.3 查看某个表的全部字段
mysql> desc db;
另一条命令,信息详细且把建表语句全部列出来:
mysql> show create tables dbG; //G竖排显示
3.4 查看当前是哪个用户
mysql> select user();
3.5 查看当前所使用的数据库
mysql> select database();
3.6 创建一个新库
mysql> create database db1;
3.7 创建一个新表
mysql> use db1; mysql> create table t1 (`id` int(4), `name` char(40)); id name
3.8 查看当前数据库的版本
mysql> select version();
3.9 查看MySQL的当前状态
mysql> show status;
3.10 查看MySQL的参数
mysql> show variables;
参数很多。其中很多参数是在/etc/my.cnf中定义的,有部分参数可以在线编辑。
3.11 修改MySQL的参数
举例,修改参数max_connect_errors
mysql> show variables like 'max_connect%'; --- variable_name Value max_connect_errors 100 max_connections 151 --- mysql> set global max_connect_errors = 1000; ok mysql> show variables like 'max_connect_errors'; --- variable_name Value max_connect_errors 1000 ---
%为通配符,set global为临时修改,重启会失效。永久生效需在my.cnf中定义
3.12 查看当前MySQL服务器的队列
查看服务器队列在日常的管理工作中最为繁忙。可以看当前MySQL在干什么,也可以发现是否发生锁表。
mysql> show processlist;
3.13 创建一个普通用户并授权
mysql> grant all on *.* to user1 identified by '123456'; //本机 mysql> grant all on db1.* to 'user2'@'192.168.188.128' identified by '111222'; //网络中的其他机器上, mysql> grant all on db1.* to 'user2'@'%' identified by '111222'; //该符号%表示所有主机
all 表示所有的权限(如读、写、查询、删除等操作);
第一个*表示所有库,后者表示所有的表。
identified by后面跟密码,单引号引起;user1特指localhost上的user1
4.常用的SQL语句
4.1查询语句
mysql> select count(*) from mysql.user; //count(*)表示表中共有的行数 mysql> select * from mysql.db; //表示mysql库中的db表 mysql> select db from mysql.db; mysql> select db,user from mysql.db; mysql> select * from mysql.db where host like '192.168.%';
4.2 插入一行
mysql> insert into db1.t1 values (1, 'abc'); mysql> select * from db1.t1; id name 1 abc
4.3 更改表的某一行
mysql> updata db1.t1 set name='aaa' where id=1; mysql> select * from db1.t1 id name 1 aaa
4.4 清空某个表的数据
mysql> truncate table db1.t1; mysql> select * from dbq.t1; //为空
4.5 删除表
mysql> drop table db1.t1;
4.6 删除数据库
mysql> drop database db1;
5.MySQL 数据库的备份与恢复
5.1 MySQL备份
# mysqldump -uroot -p'123456' mysql >/tmp/mysql.sql //备份mysql库
5.2 MySQL 恢复
# mysql -uroot -p'123456' mysql </tmp/mysql.sql
出处:《跟阿铭学Linux》