zoukankan      html  css  js  c++  java
  • mysql应用管理及进阶实战

    prompt u@ceshi :m:s->   ###临时改变命令提示符

    如果想永久生效放入my.conf里面的 [mysql]下面  prompt u@ceshi :m:s->

    mysql登录

    # mysql -h 127.0.0.1 -u mysql -P 3000   #远程连接  IP + 端口

    mysql -h localhost -u root  -S /data/ops/app/mysql-5.6.23/3307/3307.sock 

    MySQL修改root密码的多种方法
    在 Navicat for MySQL 下面直接执行  SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpass');   就可以
    
     
    
     
    
    方法1: 用SET PASSWORD命令
    
      mysql -u root
    
      mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpass');
    
    方法2:用mysqladmin
    
      mysqladmin -u root password "newpass"
    
      如果root已经设置过密码,采用如下方法
    
      mysqladmin -u root password oldpass "newpass"
    
    方法3: 用UPDATE直接编辑user表
    
      mysql -u root
    
      mysql> use mysql;
    
      mysql> UPDATE user SET Password = PASSWORD('newpass') WHERE user = 'root';
    
      mysql> FLUSH PRIVILEGES;
    
    在丢失root密码的时候,可以这样
    
      mysqld_safe --skip-grant-tables&
    
      mysql -u root mysql
    
      mysql> UPDATE user SET password=PASSWORD("new password") WHERE user='root';
    
      mysql> FLUSH PRIVILEGES;

    ##生产环境
    ./mysqld_safe --defaults-file=/data/ops/app/mysql-5.6.23/etc/3308.cnf --skip-grant-tables --user=mysql&
    mysql> update mysql.user set password=password('123456') where user='root';
    mysql> flush privileges;
    mysqladmin -h127.0.0.1  -uroot -p shutdown ###输入密码123456

    mysql -h127.0.0.1 -uroot -P3003 -p #输入密码登录成功123456

     

    sql---日常操作

    mysql> select user,host,password from mysql.user order by user; ##查询并排序
    mysql> delete from mysql.user where user=' ';  ##删除用户
    mysql> create database test;        创建数据库
    mysql> show create database testG #查看创建数据库,默认创建字符集latin1
    mysql> create database test_gbk DEFAULT CHARACTER SET gbk COLLATE gbk_chinese_ci; ###创建指定的字符集数据库
    mysql> show create dabases test_gbkG  ##查看创建的数据库发现字符集变成gbk
    mysql> create database test_utf8 DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci; ###创建utf8数据库
    mysql> show create dabases test_utf8G ##查看创建的数据库字符集变成utf8
    
    ##提示 字符集的不一致是数据库中午乱码的罪魁祸首,有关字符集的看后面
    ##提示 如果变异的时候指定了字符集 以后创建数据库就不需要指定了
    企业里:
    1根据开发的程序确定字符集(建议用utf8)
    2.编译的时候指定字符集
    3.编译的时候没有指定字符集或者指定了和程序不同的字符集,如果解决?   ###指定字符集创建数据库即可。
    
    显示数据库
    show databases;
    select database();
    删除数据库
    mysql> drop database test;
    切换数据库
    use test_utf8;
    查看版本
    select version();
    查看当前用户
    select user(); 
    查看当前时间
    select now();
    创建用户
    mysql> create user 'haha'@'localhost' identified by '123';
    删除用户
    mysql> drop user 'haha'@'localhost';
    创建并授权
    grant all privileges on test.* to oldboy@'localhost' identified by 'oldboy123';
    查看用户权限
    mysql> show grants for oldboy@localhost;
    只授权
    grant all ON test.* to 'haha'@'localhost';
    远程授权
    mysql> create user test@'10.0.0.%' identified by 'test';
    
    回收权限
    mysql> show grants for oldboy@localhost;
    +---------------------------------------------------------------------------------------------------------------+
    | Grants for oldboy@localhost                                                                                   |
    +---------------------------------------------------------------------------------------------------------------+
    | GRANT USAGE ON *.* TO 'oldboy'@'localhost' IDENTIFIED BY PASSWORD '*FE28814B4A8B3309DAC6ED7D3237ADED6DA1E515' |
    | GRANT ALL PRIVILEGES ON `test`.* TO 'oldboy'@'localhost'                                                      |
    +---------------------------------------------------------------------------------------------------------------+
    2 rows in set (0.00 sec)
    
    mysql> revoke insert on test.* from 'oldboy'@'localhost';
    Query OK, 0 rows affected (0.00 sec)
    
    mysql> show grants for oldboy@localhost;
    企业环境尽量最小化权限,只给增删改查,把创建删除收回。
    
    
    
    创建表
    mysql> create table tutorials_tbl(    tutorial_id INT NOT NULL AUTO_INCREMENT,    tutorial_title VARCHAR(100) NOT NULL,    tutorial_author VARCHAR(40) NOT NULL,    submission_date DATE,    PRIMARY KEY ( tutorial_id ) );
    查看表结构
    mysql> desc tutorials_tbl;
    mysql> show create table tutorials_tbl;
    
  • 相关阅读:
    临界区,互斥量,信号量,事件的区别
    解决位图失真-SetStretchBltMode()
    Invalidate、RedrawWindow与UpdateWindow
    Shlwapi.h Shlwapi.dll 动态库
    C++ _access和_waccess的使用方法
    纯C++ 连接SQL Server2005 数据库读写操作的小例子
    测试代码执行时间的帮助类
    BUG: GetDC() ReleaseDC()引起的内存泄漏
    DebugView图文教程
    CreateFile函数详解
  • 原文地址:https://www.cnblogs.com/zhaobin-diray/p/9355473.html
Copyright © 2011-2022 走看看