redhat6.5安装mysql5.7.16

1、准备

安装相关工具

  yum -y install gcc-c++ ncurses-devel cmake make perl gcc autoconf automake zlib libxml libgcrypt libtool bison 
mkdir -p /data/mysql/data
mkdir -p /data/mysql/binlog
mkdir -p /data/mysql/relaylog
mkdir -p /data/mysql/logs


chown -R mysql:mysql /data/mysql

 

 

 

3、下载boost源码包,从5.7开始boost包是必须的

cd /data/src
wget http://sourceforge.net/projects/boost/files/boost/1.59.0/boost_1_59_0.tar.gz
mkdir /usr/local/boost
tar -zxvf boost_1_59_0.tar.gz -C /usr/local/boost

4、安装mysql

cd /data/src
wget http://dev.mysql.com/get/archives/mysql-5.7/mysql-5.7.15.tar.gz
tar -zxvf mysql-5.7.15.tar.gz
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/webserver/mysql/   -DMYSQL_DATADIR=/data/mysql/data   -DSYSCONFDIR=/etc   -DMYSQL_UNIX_ADDR=/tmp/mysql.sock   -DEXTRA_CHARSETS=all   -DDEFAULT_CHARSET=utf8   -DDEFAULT_COLLATION=utf8_general_ci   -DMYSQL_TCP_PORT=3306   -DMYSQL_USER=mysql   -DWITH_DEBUG=0   -DWITH_MYISAM_STORAGE_ENGINE=1   -DWITH_INNOBASE_STORAGE_ENGINE=1   -DWITH_ARCHIVE_STORAGE_ENGINE=1   -DWITH_BLACKHOLE_STORAGE_ENGINE=1   -DWITH_MEMORY_STORAGE_ENGINE=1   -DWITH_READLINE=1  -DWITH_SSL=yes   -DDOWNLOAD_BOOST=1 -DWITH_BOOST=/usr/local/boost
make
make install

   注:cmake和编译安装的时间都比较长,在编译过程如果提示错误,可以根据提示完善相关安装条件,然后执行下面的命令后,再重新编译安装:
# make clean 
# rm -f CMakeCache.txt    

5、初始化操作

初始化数据库时不再使用“--mysql_install_db”而是使用了“--initialize”或是”--initialize-insecure”,区别在于“--initialize”会生成一个随机密码而”--initialize-insecure”不会生成密码。 

/usr/local/webserver/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/webserver/mysql --datadir=/data/mysql/data --explicit_defaults_for_timestamp=1

这里会给出默认的随机密码 b#xR6MQF)ajY,请一定要记下来一会儿登录使用(mysql从5.7开始密码不再默认空了)

以root初始化操作时要加--user=mysql参数,生成一个随机密码(注意保存登录时用) 
    数据库初始化后,再次修改权限:
# chown -R mysql:mysql /data/mysqldata/

    注意:mysql 5.7之后,默认只会创建一个 root@localhost用户,也没有test表空间,root用户的初始密码随机生成,在命令行或者error.log中可以看到。

6、mysql配置文件

 将默认生成的my.cnf备份 

    mv /etc/my.cnf /etc/my.cnf.bak 

  拷贝配置文件模板为新的mysql配置文件

cp /usr/local/webserver/mysql/support-files/my-default.cnf /etc/my.cnf 

可按需修改新的配置文件选项, 不修改配置选项, mysql则按默认配置参数运行. 

       如下是我修改配置文件/etc/my.cnf, 用于设置编码为utf8以防乱码 

[mysqld] 

character_set_server=utf8 

init_connect=’SET NAMES utf8’ #加了这句就不需要再[client]加default-character-set=utf8

[client] 

default-character-set=utf8

7、配置mysql服务开机自动启动

  cp /usr/local/webserver/mysql/support-files/mysql.server /etc/init.d/mysqld 

  chmod 755 /etc/init.d/mysqld

    检查自启动项列表中没有mysqld这个,如果没有就添加mysqld: 

 chkconfig –list mysqld 

 chkconfig –add mysqld 

    设置MySQL在345等级自动启动 

 chkconfig –level 345 mysqld on 

 或用这个命令设置开机启动:chkconfig mysqld on #加入开机启动

vi /etc/init.d/mysqld #编辑 

basedir=/usr/local/webserver/mysql #MySQL程序安装路径 
  bindir=/usr/local/webserver/mysql/bin
  if test -z "$datadir"
  then
    datadir=/data/mysql/data #MySQl数据库存放目录 
  fi
  sbindir=/usr/local/webserver/mysql/bin
  libexecdir=/usr/local/webserver/mysql/bin

service mysqld start #启动 

vi /etc/profile #把mysql服务加入系统环境变量:在最后添加下面这一行 

export PATH=$PATH:/usr/local/webserver/mysql/bin 

:wq! #保存退出 

8、检查自启动项列表中没有mysql这个,如果没有就添加mysql

chkconfig --list mysqld
chkconfig --add mysqld

9、设置MySQL在345等级自动启动

chkconfig --level 345 mysql on
chkconfig mysql on

10、创建mysql命令路径

ln -s /usr/local/webserver/mysql/bin/mysql /usr/bin

下面这两行把myslq的库文件链接到系统默认的位置,这样你在编译类似PHP等软件时可以不用指定mysql的库文件地址。 

  ln -s /usr/local/webserver/mysql/lib/mysql /usr/lib/mysql 暂无此文件 

  ln -s /usr/local/webserver/mysql/include/mysql /usr/include/mysql
 

shutdown -r now #需要重启系统,等待系统重新启动之后继续在终端命令行下面操作 

  mysql_secure_installation #设置Mysql密码 

  根据提示按Y 回车 ,然后输入2次密码,继续按Y 回车,直到设置完成 

  或者直接修改密码/usr/local/mysql/bin/mysqladmin -u root -p password “123456” #修改密码 

  service mysqld restart #重启 

  到此,mysql安装完成!

11、mysql操作命令

service mysql start
service mysql stop
service mysql restart

12、登录mysql

mysql -uroot -p
输入安装完成的时候给的随机密码,如:123456

13

修改root新密码如 123456 

mysql> alter user `root`@`localhost` identified by ‘123456’; 

mysql> quit; 

mysql> exit;(与上等效, 都是退出mysql连接) 

使用新密码重新连接mysql 

mysql -uroot -p

14.设置远程能访问数据库 

  使用mysql -h localhost -u root -p登录mysql数据库 执行 

    grant all privileges on . to root@’%’ identified by ‘密码’ 使远程用户能够访问数据库 ,执行命令 :flush privileges;

参考:http://www.dongcoder.com/detail-244241.html

http://blog.csdn.net/yumushui/article/details/45534199

转载于:https://my.oschina.net/u/1160316/blog/795737

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值