• 常用MySQL操作


    目录

    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》

     

    配置若有遗漏或错误,请评论留言。
  • 相关阅读:
    【js类库AngularJs】学习angularJs的指令(包括常见表单验证,隐藏等功能)
    【js类库AngularJs】解决angular+springmvc的post提交问题
    【javascript类库】zepto和jquery的md5加密插件
    【转】Java Cipher类 DES算法(加密与解密)
    手机QQ访问时,html页面在QQ中自定义预览和自定义分享
    dos 删除文件夹 rd
    摆动效果
    【js类库Raphaël】使用raphael.js根据点坐标绘制平滑曲线
    更新html技术比较
    动态设置缩放比例和html字体大小
  • 原文地址:https://www.cnblogs.com/BrokenEaves/p/14426960.html
Copyright © 2020-2023  润新知