Linux mysql如何更改root密码用什么命令
不仅是操作系统,数据库mysql也有root密码,给我们数据库一层安全保护,那么在Linux系统中,mysql要如何修改root密码呢?特别是忘记了root密码要怎么办?
Linux mysql如何更改root密码
通过登录mysql系统:
代码如下
# mysql -uroot -p
Enter password: 【输入原来的密码】
mysql》use mysql;
mysql》 update user set password=passworD(“test”) where user=’root’;
mysql》 flush privileges;
mysql》 exit;
在mysql系统外,使用mysqladmin:
代码如下
# mysqladmin -u root -p password “test123″
Enter password: 【输入原来的密码】
忘记原来的myql的root的密码:
首先,你必须要有操作系统的root权限了。要是连系统的root权限都没有的话,先考虑root系统再走下面的步骤。
类似于安全模式登录系统,有人建议说是pkill mysql,但是我不建议哈。因为当你执行了这个命令后,会导致这样的状况:
代码如下
/etc/init.d/mysqld status
mysqld dead but subsys locked
这样即使你是在安全模式下启动mysql都未必会有用的,所以一般是这样/etc/init.d/mysqld stop,如果你不幸先用了pkill,那么就start一下再stop咯。
代码如下
# mysqld_safe –skip-grant-tables &
&,表示在后台运行,不再后台运行的话,就再打开一个终端咯。
代码如下
# mysql
mysql》 use mysql;
mysql》 UPDATE user SET password=password(“test123“) WHERE user=’root‘;
mysql》 flush privileges;
mysql》 exit;
##本来mysql是不分大小写的,但是这个是修改的mysql中的mysql数据库的具体的值,要注意到。
补充:MySQL 数据库常用命令
create database name; 创建数据库
use databasename; 进入数据库
drop database name 直接删除数据库,不提醒
show tables; 显示表
describe tablename; 查看表的结构
select 中加上distinct去除重复字段
mysqladmin drop databasename 删除数据库前,有提示。
显示当前mysql版本和当前日期
select version(),current_date;
数据库维护方法
在MySQL使用的过程中,在系统运行一段时间后,可能会产生碎片,造成空间的浪费,所以有必要定期的对MySQL进行碎片整理。
当删除id=2的记录时候,发生的现象
这个时候发现磁盘的空间并没有减少。这种现象就叫做碎片化(有一部分的磁盘空间在数据删除以后(空),还是无法被操作系统所使用。)
常见的优化:
# alter table xxx engine myisam;
# optimize table t1;
注意: 在实际开发的过程中,上面两个语句尽量少使用,因为在使用的过程中,MySQL的表的结构会整体全部重新整理,需要消耗很多的资源,建议在凌晨两三点钟的时候执行。(在linux下有定时器脚本可以执行,crontab)
MySQL密码相关文章: