centos 安装 rpm格式mysql 重置mysql密码

安装rpm安装包

在linux 安装mysql 分为安装源码和已经编译好的文件(非rpm 包)

两种文件主观上的区别就是源码文件比较下,编译好的文件会比较大
安装编译好的文件步骤为:
  1. 到mysql官网下载安装包 --server 包
  2. 需要安装一个mysql 的依赖包 yum install libaio 
  3. 如果之前安装过mysql则需要卸载 (ps :查看有没有安装过 可以通过yum 来查看,或者直接查看/ect/my.cnf 或者 /etc/mysql 是否存在) 卸载命令 yum remove mysql  或者rpm -e mysql --nodeps mysql-libs-*
  4. 添加组 groupadd mysql  添加用户  useradd -r -g mysql mysql
  5. 解压下载下来的mysql 文件  解压路径为 ${sqlpath} (ps: 解压路径自己决定 此处用 ${sqlpath} 来代替具体的路径)
  6. 把mysql 的文件夹授权给mysql 这个mysql用户和mysql组  chwn -R mysq:mysql ${sqlpath}
  7. 安装mysql 执行script 下的mysql_install_db 。mysql 默认的安装路径是在/usr/local/mysql 文件夹 如果不是默认文件夹则需要指定basedir 和datadir ,mysql_install_db 这个文件是mysql 所持有,所以在执行时需要指定执行的用户 所以 具体的执行命令为
     ./mysql_install_db --user=mysql --basedir=${sqlpath} --datadir=${sqlpath}/data
     安装成功后,会有提示修改密码
  8. 修改配置文件 :
     cd ${sqlpath}/support-files
     cp my-default.cnf /etc/my.cnf
     cp mysql.server /etc/init.d/mysql   (ps:如果需要按照习惯的mysqld 的话,此处修改mysql 为mysqld)
     vim /etc/init.d/mysql #若mysql的安装目录是/usr/local/mysql,则可省略此步
     修改文件中的两个变更值
     basedir=${sqlpath} #需要替换具体的${sqlpath}
     datadir=${sqlpath}/data #需要替换具体的${sqlpath}
  9. 修改环境变量
     vim /etc/profile
     export MYSQL_HOME="/software/mysql-5.6.21"
     export PATH="$PATH:$MYSQL_HOME/bin"
     保存退出
     使环境变量生效:. /etc/profile (或者使用source 命令 source ./etc/profile)
  10. 添加自启动服务chkconfig --add mysql
     chkconfig mysql on
  11. 愉快的启动mysql 吧   service mysql start
  12. 修改mysql 密码 mysqladmin -u root password 'your_password'
  13. 设置远程访问 登录mysql 执行命令:GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'your_password' WITH GRANT OPTION;  FLUSH PRIVILEGES  (ps:刷新一下,否则远程无法登录);

重置root密码

mysql 忘记密码之后怎么办 ? 百度吧 !
shell: mysqld_safe --basedir=${sqlpath}  --datadir=${sqlpath}/data --skip-grant-tables &
修改user 表
UPDATE user SET password=PASSWORD("new_password") WHERE user='root';
FLUSH PRIVILEGES;
# vim /etc/my.cnf 
在[mysqld]的段中加上一句:skip-grant-tables 
重启后就可以直接mysql访问

update mysql.user set password= password("yh123") 
where user="root" and host="localhost";
flush privileges;


添加一个最后修改时间,并且在表更新后,修改为当前时间
alter table yyg.store_goods modify column LAST_UPDATE
timestamp DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
COMMENT '最后更新时间';