设为首页 收藏本站
查看: 505|回复: 0

[经验分享] MySQL基础操作命令

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2016-11-23 09:04:16 | 显示全部楼层 |阅读模式
MySQL基础操作命令

1、 查看MySQL进程

ps -ef|grep mysql |grep -v grep

2、 查看MySQL端口

ss -lnt | grep 3306

3、 MySQL的启动

mysql -uroot -p

/etc/init.d/mysql

初始化时MySQL的启动方法

mysqld_safe -user=mysql &

4、 关闭数据库

(1)平滑关闭数据库

mysqladmin -uroot -pcentos shutdown

/etc/init.d/mysqld stop

kill -USR2 cat path/pid

(2)强制关闭数据库

killall mysqld

pkill mysqld

killall -9 mysqld

注意:尽量不要野蛮的杀死数据库,生产高并发环境可能会引起数据丢失。

5、 多实例启动与关闭

多实例的启动就是我们写脚本,启动时用mysqld_safe指定配置文件启动,关闭时用mysqadmin

(1)/data/3306/mysql start

(2)/data/3307/mysql stop

6、 登陆mysql方法

(1)单实例登陆

mysq                        #数据库没有配置秘密的登陆方式

mysql -uroot                #数据库没有配置秘密的登陆方式

mysql -uroot -p             #标准的dba命令登陆命令

mysql -uroot -pcentos       #非脚本一般不这样用,密码明文会泄露密码,可以掩饰history功能解决

强制linux不记录敏感历史命令

      #HISTCONTROL=ignorespace

(2)多实例登陆

mysql -uroot -p -S /data/3306/mysql.sock

多实例通过mysql -S命令制定不同的sock文件登陆不同的服务中

(3)远程连接无需制定sock路径

mysql -uroot -p 127.0.0.1 -P3307

7、 更改MySQL数据库登陆提示符

(1)命令行修改登陆提示符,临时生效(进入数据库中)

mysql> prompt \u@solindb \r:\m:\s->

(2)配置文件修改登陆提示符

在my.cnf配置文件中[mysql]模板下添加如下内容

[mysql]

prompt=\\u@solindb \\r:\\m:\\s->

8、 MySQL的帮助命令help

MySQL中的help和linux的man相似

mysql> help history

mysql> help grant

mysql> help show grants

9、 为管理员root用户设置密码方法

mysqladmin -u root password ‘centos123’ #没有密码的用户设置密码

mysqladmin -u root -p ‘centos123’ password ‘centos456’ -S /data/3306/mysql.sock #适合多实例方式

注:以上为linux命令行

10、修改管理员root密码

    方式一:命令行修改

      mysqladmin -u root -p ‘centos123’ password ‘centos456’

mysqladmin -u root -p ‘centos123’ password ‘centos456’ -S /data/3306/mysql.sock

方式二:SQL语句修改

mysq>UPDATE mysql.user SET password=PASSWORD(“centos123”) WHERE user=’root’;

mysql>flush privileges;

方式三:root密码为空,修改root口令

mysql> set passwprd=passwpef(‘centos123’);

mysql> flush privileges;

注:此法不适合--skip--grant--tables方式修改密码

10、找回丢失的mysql用户密码

(1)   首先停止mysql

/etc/init.d/mysqld stop

(2)   使用 --skip-grant-tables  启动mysql,忽略授权登陆

mysqld_safe --skip-grant-tables --user=mysql &

mysql –uroot –p或mysql #登陆时空密码

注:在启动时加--user=mysql参数,表示忽略授权验证

(3)   修改root密码为新密码

mysql> update mysql.user set password=PASSWORD(“cebtos123”) where user=”root” and host=”locahost”;

mysql> flush privileges;

(4)   重启服务再登陆

mysqladmin -uroot -pcentoos123 shtudown

/tec/init.d/mysqld start

mysql -uroot -p”centos123”

11、多实例MySQL启动修改丢失root密码

    (1)关闭mysql

          killall mysqld

(2)启动时加--skip-grant-table参数

      mysqld_safe --defaults-file=/data/3306/my.cof --skip-grant-table &

      mysql -u root -p -S /data/3306/mysql.sock #登陆时空密码

(3)修改密码的方法

      mysql> UPDATE msql.user SET password=PASSWORD(“centos123”) WHERE user=’root’;

      FLUSH PRIVILEGES;





12、SQL结构化查询语言

SQL结构化查询语言包括6个部分

(1)数据查询语言(DQL)

DQL全称Data Query Language,其语句,也称为“数据检索语句”,用以从表中获得数据,确定数据怎样在应用程序给出,保留字SELECT是DQL用得最多的动词,其他DQL常用的保留字有WHERE,ORDAER BY,GROUP BY 和 HAVING

mysql> select user,host from mysql.user order by user asc; #查询mysql.user的user,host,并升序排列

+------+-----------+

| user | host      |

+------+-----------+

| root | localhost |

| root | 127.0.0.1 |

| root | ::1       |

+------+-----------+

3 rows in set (0.00 sec)



mysql> select user,host from mysql.user order by user desc; #查询mysql.user的user,host,并倒序排列

+------+-----------+

| user | host      |

+------+-----------+

| root | localhost |

| root | 127.0.0.1 |

| root | ::1       |

+------+-----------+

3 rows in set (0.00 sec)

(2)数据操作语言(DML)

DML全称Data Manipulation Language,其语句包括INSERT,UPDATE和DELETE。他们分别用于添加,修改和删除表中的行(数据)也称作动作查询语句

mysql> select user,host from mysql.user order by user desc;

+------+-----------+

| user | host      |

+------+-----------+

| root | localhost |

| root | 127.0.0.1 |

| root | ::1       |

+------+-----------+

3 rows in set (0.00 sec)



mysql> delete from mysql.user where host='::1';   #删除表中host=;;1的(行)数据

Query OK, 1 row affected (0.00 sec)



mysql> select user,host from mysql.user order by user desc;

+------+-----------+

| user | host      |

+------+-----------+

| root | localhost |

| root | 127.0.0.1 |

+------+-----------+

2 rows in set (0.00 sec)

(3)事物处理语言(TPL)

它的语句能确保被DML语句影响的表的所有行及时得以更新。TPL语句包括BEGIN

TRANSACTION,COMMIT和ROLLBACK

(4)数据控制语言(DCL)

DCL全称(Date Control Language),它的语句通过GRANT或REVOKE获得许可,确定单用户和用户组多数据对象的访问。某些RDBMS可用GRANT或REVOKE控制对表单个列的访问。

(5)数据定义语言(DDL)

    DDL全称(Date Definition Language),其语句包括动词CREATE和DROP,在数据库中创建新表或删除表(CREAT TABLE或DROP TABLE);为表加入索引等。DDL包括许多与人数据库目录中获得有关的保留字。字也是动作查询的一部分

(6)指针控制语言(CCL)

全称CURSOR Control Language ,它的语句,像DECLARE CURSOR,FETCH INTO和UPDATE WHERE CURRENT用于对一个或多个表单独行的操作

小结:常见的SQL语句最常见的分类一般就是3类

DDL--数据定义语言(CREATE,ALTER,DROP)

DML--数据操作语言(SELECT,INSERT,DELETE,UPDATE)

DCL--数据控制语言(GRANT,REVOKE,COMMIT,ROLLBACK)




运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-304275-1-1.html 上篇帖子: Mysql 建一个UTF-8编码的库 下篇帖子: corosync+pacemaker使用pcs构建高可用集群
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表