MySQL数据库编译安装安装后优化操作及超户忘记数据库密码的解决方法

Posted mashuang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL数据库编译安装安装后优化操作及超户忘记数据库密码的解决方法相关的知识,希望对你有一定的参考价值。

mysql的下载地址:http://www.dev.mysql.com/downloads

准备工作:卸载rpm方式安装的mysql-server、mysql

      rpm -qa | grep mysql

若存在,用rpm -e mysql-server mysql --nodeps命令卸载

安装ncurses-devel与cmake包

  yum -y install ncurses-devel

  tar xf cmake-2.8.6.tar.gz -C /usr/src/

  cd /usr/src/cmake-2.8.6/

  ./configure && gmake && gmake install

源码编译及安装:

增加程序用户mysql:

  useradd -M -s /sbin/nologin mysql

解压mysql-5.5.22.tar.gz:

  tar xf mysql-5.5.22.tar.gz -C /usr/src

cmake 配置,编译及安装:

  cd /usr/src/mysql-5.5.22/

  cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DSYSCONFDIR=/etc -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all && make && make install

安装后优化操作:

修改mysql安装目录的属主和属组:

  chown -R mysql:root /sur/local/mysql/

创建修改my.cnf配置文件:

  /bin/cp support-file/my-medium.cnf /etc/my.cnf

my.cnf配置文件相关介绍,在mysql解压路径support-files/下提供的模板:

my-huge.cnf        巨大数据量

my-innodb-heavy-4G.cnf    innodb引擎

my-large.cnf        大数据量

my-medium.cnf        测试使用

my-small.cnf          小数据量

MySQL数据库存储引擎:

myisam

innodb

不同的引擎备份方法不同,在备份时一定要先看引擎在备份!!!

添加系统服务:

  cp support-files/mysql.server /etc/int.d/mysqld

  chmod +x /etc/init.d/mysqld

  chkconfig mysqld --add

  chkconfig mysqld --list

添加MySQL命令执行的路径到PATH环境变量:

  echo "export PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile

  . /etc/profile

  echo $PATH

执行mysql_install_db脚本初始化数据库:

  /usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data/

启动mysql服务,并查看运行状态:

  /etc/init.d/mysqld start

  netstat -anpt | grep :3306

连接并登陆到mysql操作环境:

  mysqladmin -uroot password‘123123‘(首次登陆需创建密码)

退出登陆:

  quit、exit、ctrl+D

设置数据库用户名密码:

  mysqladmin -uroot password‘123123‘;history -c

忘记MySQL超户密码的解决方法

方法一:

1.暂停MySQL服务:

  /etc/init.d/mysqld stop

2.跳过grant表授权,进入安全模式,并在后台运行:

  mysqld_safe --skip-grant-tables &

  jobs(查看后台进程)

3.进入安全模式修改密码:

  mysql

    use mysql:

    update user set Password=password(‘123123‘) where user=‘root‘;

    flush privieges;

4.重启mysql服务,尝试用新密码登录:

  /etc/init.d/mysqld restart

  mysql -uroot -p123123

方法二:

1.修改配置文件:

  vim /etc/my.cnf

2.重启:

  /etc/init.d/mysqld restart

3.进入mysql修改密码:

  mysql

    use mysql;

    update user set Password=password(‘123123‘) where user=‘root‘

    flush privileges;

4.修改/etc/my.cnf配置文件,把skip_grant_tables行删掉,重启MySQL服务:

  mysql -uroot -p123123

以上是关于MySQL数据库编译安装安装后优化操作及超户忘记数据库密码的解决方法的主要内容,如果未能解决你的问题,请参考以下文章

MySQL安装后的基本安全优化

phpAdmin忘记登录密码后的操作

mysql实战总结

mysql优化-mysql最大连接数

Mysql优化

CentOS6.7 Mysql5.6.35版本 源码编译+Mysql数据库忘记root密码如何修改