前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >linux学习第四十九篇:设置更改mysql的root密码,连接MySQL,MySQL常用命令

linux学习第四十九篇:设置更改mysql的root密码,连接MySQL,MySQL常用命令

作者头像
用户1215343
发布2018-02-05 19:17:30
1.4K0
发布2018-02-05 19:17:30
举报
文章被收录于专栏:linux运维学习linux运维学习

设置更改root密码

这里的root是mysql的超级管理员用户,跟我们的linux系统不是同一个用户

  • mysql没有加入PATH环境变量中,只能在目录下使用,否则使用会出错: /usr/local/mysql/bin/mysql -uroot 更改环境变量PATH,增加mysql绝对路径,就不用只能在mysql目录下使用 export PATH=$PATH:/usr/local/mysql/bin/
这里写图片描述
这里写图片描述
  • 如果想让更改的这个环境变量永久生效,需要编辑: vim /etc/profileexport PATH=$PATH:/usr/local/mysql/bin/ 放到最后一行 保存退出后执行 source /etc/profile 使之生效
这里写图片描述
这里写图片描述
  • 设置mysql密码: mysqladmin -uroot password ‘123123’
  • 设置密码后进入mysql就需要-p参数指定密码: mysql -uroot -p’123456’
  • 密码重置,把密码123123改为123456(前提是知道root的密码): mysql -uroot -p’123123’ password ‘123456’
  • 如果不知道root密码,想要重置密码,编辑:
    1. vi /etc/my.cnf 在mysqld增加skip-grant skip-grant的意思就是忽略授权,不用用户名密码能直接登录mysql
    这里写图片描述
    这里写图片描述
    1. 修改配置文件后重启mysql服务 /etc/init.d/mysqld restart
    2. 进入mysql,这里就不需要密码: mysql -uroot
    3. 用户名密码存在表user表里,而user表存在mysql这个库里,所以先进入mysql,记得加分号: use mysql;
    4. 我们可以用查询语句查root的密码: select password from user where user=’root’; 不过这里的密码是加密的字符串,这个加密的字符串是password这个函数生成的,所以改密码的时候也需要password函数加密
    这里写图片描述
    这里写图片描述
    1. 修改密码: update user set password=password(‘111111’) where user=’root’; 这就修改成功了。修改成功后需要再去编辑 vi /etc/my.cnf,把skip-grant去掉,否则所有的用户都不需要输入密码就可以进去,很不安全。改完之后再重启服务
    这里写图片描述
    这里写图片描述

连接MySQL

  • 输入用户名密码,连接本机: mysql -uroot -p123456
  • 远程连接登录mysql,A机器连接B服务器的mysql,就需要加上IP和端口: mysql -uroot -p123456 -h127.0.0.1 -P3306
  • 我们不止监听了3306也监听了sock,我们就可以使用sock登陆,这时候连的就不是TCP/IP,是sock,这个适合本机: mysql -uroot -p123456 -S/tmp/mysql.sock
  • 把所有的数据库列出来,这种情况只出现在shell脚本里: mysql -uroot -p111111 -e “show databases”

MySQL常用命令

  • 查询库: show databases;
  • 切换库: use mysql;
  • 查看库里的表: show tables;
  • 查看表里的字段: desc user;
  • 查看建表语句: show create table user\G; // \G是竖排显示
  • 查看当前用户: select user();
  • 查看当前使用的数据库: select database();
  • 创建名为db1的库: create database db1;
  • 创建表: use db1; create table t1(`id` int(4), `name` char(40));
  • 删除表: drop table t1;
  • 查看当前数据库版本: select version();
  • 查看数据库状态: show status;
  • 查看各参数: show variables;
  • 查看max_connect%相关的参数: show variables like ‘max_connect%’;
  • 修改参数: set global max_connect_errors=1000;
  • 查看队列: show processlist; show full processlist; //用这一条的话后面的Info会完整

扩展 mysql5.7 root密码更改 http://www.apelearn.com/bbs/thread-7289-1-1.html myisam 和innodb引擎对比 http://www.pureweber.com/article/myisam-vs-innodb/ mysql 配置详解: http://blog.linuxeye.com/379.html mysql调优: http://www.aminglinux.com/bbs/thread-5758-1-1.html 同学分享的亲身mysql调优经历: http://www.apelearn.com/bbs/thread-11281-1-1.html

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018年01月11日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 设置更改root密码
  • 连接MySQL
  • MySQL常用命令
相关产品与服务
云数据库 SQL Server
腾讯云数据库 SQL Server (TencentDB for SQL Server)是业界最常用的商用数据库之一,对基于 Windows 架构的应用程序具有完美的支持。TencentDB for SQL Server 拥有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩等特点。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档