13.1 设置更改root密码更改MySQL数据库root密码
1. 首次进入数据库是不用密码的,如下所示:
/usr/local/mysql/bin/mysql -uroot //使用绝对路径进入mysql
说明:退出时直接输入quit或者exit即可
1.1 上面我们是使用绝对路径进入mysql的,这样很不方便,由于/usr/local/mysql/bin不在PATH这个环境变量里,所以不能直接使用mysql这条命令,那我们就需要把它加入到环境变量PATH中,方法如下:
ls /usr/local/mysql/bin/mysql
echo $PATH
export PATH=$PATH:/usr/local/mysql/bin/ /加入PATH,但重启后会失效
mysql -uroot //-u是指定要登录的用户,后面有无空格均可。
1.1.1 永久生效环境 变量:
vi /etc/profile //添加后重启会开机加载 把以下命令增加到最后一行: export PATH=$PATH:/usr/local/mysql/bin/
source /etc/profile //即刻生效
2.设置mysql的root密码
mysqladmin -uroot password '123123' //设置密码
警告信息:在命令行下面暴露了密码,这样不安全
3.使用密码登录mysql
mysql -uroot //报错,提示需要密码登录
mysql -uroot -p //交互的方式输入密码登录
mysql -uroot -p'123123' //直接-p后面跟密码登录,-P后面不需要有空格。
4.知道原密码更改mysql的root密码
mysqladmin -uroot -p'123123' password '111111'
5.重置密码(忘记原密码)
5.1编辑/etc/my.cnf/文件,在[mysqld] 下添加上skip-grant
vim /etc/my.cnf 增加如下内容: skip-grant
5.2重启mysql服务:
/etc/init.d/mysqld restart
5.3然后使用命令mysql -uroot 直接进入mysql:
mysql -uroot
5.4在mysql里进入密码表更改密码:
use mysql; //用户名密码存在user表里,而user表存在mysql这个库里,进入mysql,记得加分号
select * from user; //查看user表
select password from user where user='root' ;
//查询语句查询密码表。加密的字符串是password这个函数生成
update user set password=password('123123') where user='root'; //更改密码为123123命令
5.5 改完密码要重新进入/etc/my.cnf文件将skip-grant去掉,不然mysql里其他的用户都可以不用密码直接登录,不安全:
vi /etc/my.cnf //去掉skip-grant
/etc/init.d/mysqld restart //重启mysql
mysql -uroot -p123123 //使用新密码测试登录mysql
13.2 连接mysql
连接mysql
1.连接本机数据库
mysql -uroot -p123123
2.通过IP远程mysql:(A机器连接B服务器的mysql,就需要加上IP和端口,如下)
mysql -uroot -p123123 -h127.0.0.1 -P3306 //-h用来指定远程主机的IP -P指定端口
3.通过sock远程,大S指定sock(只适合在本机)
mysql -uroot -p123123 -S/tmp/mysql.sock
说明:mysql我们本机不止监听了3306也监听了sock,所以就可以使用sock登陆,但这个时候不是使用TCP/IP连接,是使用sock,只适合在本机。
4. 连接mysql后,把数据库表列出来,这种情况只适用在shell脚本里。
mysql -uroot -p123123 -e "show databases"
13.3 mysql常用命令
mysql常用命令
在日常工作中,难免会遇到一些与Mysql相关的操作,比如建库、建表、查询MySQL状态等,掌握最基本的操作。
注意:使用mysql命令的结尾处都需要加一个分号。
1.查询库 show databases;
2.切换库 use mysql;
3. 查看库里的表 show tables;
4.查看表里的字段 desc tb_name;
5. 查看建表语句 show create table tb_name\G;
6.查看当前用户 select user();
7. 查看当前使用的数据库 select databsase();
8.创建库 create database db1;
9. 创建表 use db1; create table t1(`id` int(4), `name` char(40));
10.查看当前数据库版本 select version();
11. 查看数据库状态 show status;
12.查看各参数 show variables; show variables like 'max_connect%';
13.修改参数 set global max_connect_errors=1000;
14.查看队列 show processlist; show full processlist;
6月19日