50010623 发表于 2018-10-6 08:21:28

第十三章 MySQL操作

  13.1 更改root密码
  13.1.1   更改密码
  默认是没有密码的。
  /etc/init.d/mysql start       启动mysql
  ps aux |grep mysql      查看是否启动了
  mysql-uroot         报找不到指令错误
  因为mysql命令不在环境变量中,可以使用如下方法:
  ls/usr/local/mysql/bin/mysql
  1)用绝对地址
  /usr/local/mysql/bin/mysql -uroot
  更改环境变量PATH,增加mysql绝对路径
  2)暂时加入环境变量
  export PATH=$PATH:/usr/local/mysql/bin/
  3)永久生效,修改profil文件,,增加命令句。
  vim /etc/profile
  export PATH=$PATH:/usr/local/mysql/bin/
  source /etc/profile      //更新一下即可
  mysqladmin -uroot password '123456'//设置密码123456
  提示了:你将密码在当前命令行显示出来了,不×××全
  mysql -uroot -p123456       //使用密码123456登陆
  mysqladmin -uroot-p'123456' password '567890'   更改密码为567890
  13.1.2 密码重置
  修改vi /etc/my.cnf             //增加一行skip-grant忽略授权

  重启mysql服务 /etc/init.d/mysqld restart
  mysql -uroot   不需要密码即可登陆
  登陆后切换库   use mysql;
  select * from user;    这个表存放了用户/密码/权限等
  select password from user;   选出密码
  使用命令更改root密码为aminglinux
  update user set password=password('aminglinux') where user='root';
  修改配置文件将忽略授权取消
  vi /etc/my.cnf //删掉增加的行skip-grant忽略授权
  /etc/init.d/mysqld restart      重启mysql服务
  mysql -uroot -paminglinux    使用新密码登陆
  13.2 连接Mysql
  mysql -uroot -paminglinux    //默认也是指定了socket连接
  mysql -uroot -paminglinux    -S/tmp/mysql.sock      //指定socket连接
  mysql -uroot -paminglinux    -h127.0.0.1 -P3306    //指定IP端口连接,默认3306
  mysql -uroot -paminglinux    -e "show databases"    //登陆把所有的数据库列出来
  13.3 Mysql常用命令
  库由表组成,表由字段组成。
  查询库 show databases;
  切换库 use mysql;
  查看库里的表 show tables;
  查看表里的字段 desc user;                  user为表的名字
  查看建表语句 show create table user\G   user为表的名字; \G竖排显示
  加\G后,其实就不用加分号了。 它本身就是一个结束符号。 
  加了分号后,mysql以为我们又敲了另外一个命令,而另外一个命令是空,就报了这个ERROR
  查看当前用户 select user();   //分别查看一下用户名
  mysql -uroot -paminglinux    -h192.168.188.128 -P3306      //aming-01
  mysql -uroot -paminglinux    -h127.0.0.1 -P3306               //localhost
  查看当前使用的数据库 select database();
  创建库 create database db1;       //db1为新建的库
  创建表 use db1; create table t1(id int(4), name char(40));   //t1为库db1的表

  查看当前数据库版本 select version();
  查看数据库状态 show status;
  查看各参数 show variables; show variables like 'max_connect%';
  修改参数 set global max_connect_errors=1000;   //临时的,要永久的修改配置文件
  查看队列 show processlist; show full processlist;
13.4 Mysql 用户管理
  默认有一个root用户。
  //创建user1用户,授权所有的权限密码是123456,限制在localhost登录

  grant all on . to 'user1' @'localhost' >  grant完之后,还要执行  flush privileges;
  mysql -uuser1 -p123456    -h127.0.0.1 -P3306   登陆一下
  mysql -uuser1 -p123456      也可以,因为授权了localhost,localhost就是针对socket
  针对具体权限授权
  grant SELECT,UPDATE,INSERT on db1. to 'user2'@'192.168.188.1'>
  针对所有ip授权

  grant all on db1. to 'user3'@'%'>  查看授权
  show grants;
  针对用户查看授权            查看权限后可以复制内容授权给另一个用户或者地址
  show grants for user2@192.168.188.2;
  13.4 Mysql常用语句
  select count() from mysql.user;       //查看mysql的user表的函数
  selectfrom mysql.db\G         //查看mysql的所有内容   \G
  select db from mysql.db;         //查看表的字段
  select db,user from mysql.db;   //查看表的两个字段
  select from mysql.db where host like '192.168.%';    //模糊查看
  selectfrom db1.t1\G
  insert into db1.t1 values (1, 'abc');       //插入字段ID+name

  update db1.t1 set name='aaa' where>
  delete from db1.t1      where>  truncate table db1.t1;             //清空表内容,但是字段还存在
  drop table db1.t1;               //删除表
  drop database db1;             //删除库

  13.4 Mysql 数据库备份与恢复
  备份库到文件中  mysqldump -uroot -paminglinux    mysql > /tmp/mysql.sql
  mysql -uroot -paminglinux    -e "create database mysql2"   //创建一个库mysql2
  恢复库 mysql -uroot -paminglinux    mysql2 < /tmp/mysql.sql
  备份表 mysqldump -uroot -paminglinux    mysql user > /tmp/user.sql   //备份库user表
  恢复表 mysql -uroot -paminglinux    mysql < /tmp/user.sql
  备份所有库 mysqldump -uroot -p -A >/tmp/123.sql
  只备份表结构 mysqldump -uroot -paminglinux    -d mysql > /tmp/mysql.sql

页: [1]
查看完整版本: 第十三章 MySQL操作