mysql-5.6/5.7 二进制安装

1 下载二进制包:  官网 *glibc2*

2  解压包到定义路径:   tar  zxvf   *.gz   /usr/local/mysql 


安装步骤

3.1 创建用户
[root@dominic ]# groupadd mysql
[root@dominic ]# useradd -m -r -g mysql mysql
3.2 创建目录
[root@dominic ]# mkdir /service/data
3.3 解压
[root@dominic 
]# cd /service/data

[root@dominic  ]# tar -xzvf mysql-advanced-5.6.21-linux-glibc2.5-x86_64.tar.gz  -C /usr/local/mysql 
[root@dominic  ]# move  
mysql-advanced-5.6.21-linux-glibc2.5-x86_64   mysql 
[root@dominic ]# cd mysql
[root@dominic  mysql]# chown -R mysql .
[root@dominic  mysql]# chgrp -R mysql .

 # su - mysql 

  $vi .bash_profile 

   echo  PATH=/usr/local/mysql/bin:$PATH:/data/bin:$PATH:$HOME/bin

   

----------以下是5.6.* mysql版本安装方式-----------

3.4 安装数据库
[root@dominic mysql]# scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql/ --datadir=/service/data/

--在这里,注意查看一下/etc/hosts , 绑定一下主机名及IP 地址,否然 不能初始化。


4 配置 数据库
# cp support-files/mysql.server /etc/init.d/mysqld   //设置mysql服务器操作路径

#chmod 755 /etc/init.d/mysqld//更改权限

#bash scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/service/data///安装数据库,并设置用户名和数据存放位置

# cp /usr/local/mysql/my.cnf /etc/my.cnf 

# chown -R mysql:mysql /etc/my.cnf /etc/init.d/mysqld


 5 修改 my.cnf  配置文件:

[mysqld]
port=3308c
datadir=/service/data
pid-file=/var/run/mysqld/mysqlbinary.pid
socket=/var/run/mysqld/mysqlbinary.socket
log=/var/log/mysqld/mysqlbinary.log
log-error=/var/log/mysqldlbinary-err.log

[client]
socket=/var/run/mysqld/mysqlbinary.socket

第二步:创建相关目录,并修改权限
chown -R mysql:mysql /usr/local/mysql 
chmod -R 775 /usr/local/mysql  
chmod -R 775 /etc/mysqld

 
启动报错: [ root@oracle11g  mysql]# /usr/local/mysql/bin/mysql 
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)  

因为是编译好了的, 可以做一个软连接形式:
或者用这样的方法:
  ln -s /usr/local/mysql/data/mysqlbinary.socket /tmp/mysql.sock

----------------以下是5.7.8 之后的安装方式 ---------------------

5.7.8 版本以后,mysql 数据库做了一些变更: 
1, 初次进入 mysql 库需要 输入初始密码,路径在 /home/mysql/下:
       [mysql@martinli02 mysql-5.7.10]$ cat /home/mysql/.mysql_secret 
        # Password set for user ' root@localhost' at 2015-12-27 23:17:57 
        .hyMlk?!b6M!

2,5.6 中的这一步 “  # bash scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/service/data/ //安装数据    
   =>   basedir=/usr/local/mysql/ 中 没有了 scripts 目录,同事mysql_install_db 放在了 bin 目录下

3,  5.7.8 以后安装如下:
    编辑初始化参数: 
 [mysql@martinli02 bin]$ pwd
 /usr/local/mysql-5.7.10/bin
 [mysql@martinli02 bin]$ ./mysql_install_db --user=mysql --datadir=/mysqldb/mysql-data/
2015-12-27 23:17:57 [WARNING] mysql_install_db is deprecated. Please consider switching to mysqld --initialize
2015-12-27 23:18:02 [WARNING] The bootstrap log isn't empty:
2015-12-27 23:18:02 [WARNING] 2015-12-27T15:17:57.126476Z 0 [Warning] --bootstrap is deprecated. Please consider using --initialize instead
2015-12-27T15:17:57.127493Z 0 [Warning] Changed limits: max_open_files: 1024 (requested 5000)
2015-12-27T15:17:57.127515Z 0 [Warning] Changed limits: table_open_cache: 431 (requested 2000)
   
    初始化数据库:(初始可忽略)

[mysql@martinli02 bin]$ /usr/local/mysql-5.7.10/bin/mysqld --initialize --datadir=/mysqldb/mysql-data/


    启动数据库1:
[mysql@martinli02 bin]$ /usr/local/mysql-5.7.10/bin/mysqld_safe  --basedir= /xxxx/yyy   datadir=/yy/xx

[mysql@martinli02 bin]$ ps -ef |grep mysql 
mysql      911     1  0 Dec27 pts/0    00:00:00 /bin/sh /usr/local/mysql-5.7.10/bin/mysqld_safe --datadir=/mysqldb/mysql-data --pid-file=/mysqldb/mysql-data/martinli02.com.pid
mysql     1093   911  0 Dec27 pts/0    00:00:00 /usr/local/mysql-5.7.10/bin/mysqld --basedir=/usr/local/mysql-5.7.10 --datadir=/mysqldb/mysql-data --plugin-dir=/usr/local/mysql-5.7.10/lib/plugin --log-error=/usr/local/mysql-5.7.10/mysql.log --pid-file=/mysqldb/mysql-data/martinli02.com.pid --socket=/tmp/mysql.sock

[mysql@martinli02 bin]$ netstat -altn |grep 3306
tcp        0      0 :::3306                     :::*                        LISTEN

  启动数据库2 :
 这里也可以把/etc/my.cnf  重新配置,把 此项拷贝,并授权:
  # cp support-files/mysql.server /etc/init.d/mysqld //设置mysql服务器操作路径

  # cp /usr/local/mysql-5.7.10/my.cnf /etc/my.cnf 

  # chown -R mysql:mysql /etc/my.cnf /etc/init.d/mysqld


  同时最好在 .bash_profile 中设置PATH, 方便操作。

 [mysql@sfpay ~]$ cat .bash_profile 
# .bash_profile

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
    . ~/.bashrc
fi

# User specific environment and startup programs

PATH=$PATH:$HOME/bin

export PATH
export DATADIR=/data/mysql/
export BASEDIR=/usr/local/mysql-5.7.10/
export PATH=$DATADIR/bin:$PATH:$BASEDIR/bin:$PATH:$HOME/bin
export LD_LIBRARY_PATH=$DATADIR/lib:$LD_LIBRARY_PATH:$BASEDIR/lib

4, 以下是初始密码设置:

1.mysql5.7会生成一个初始化密码,而在之前的版本首次登陆不需要登录。

shell> cat /home/mysql/.mysql_secret

# Password set for user 'root@localhost' at 2015-04-22 22:13:23 

?G5W&tz1z.cN

2.若第一步成功,则使用该密码继续第7步(笔者由于找不到该文件,只能从第3步开始)

3.修改MySQL的配置文件(默认为/etc/my.cnf),在[mysqld]下添加一行skip-grant-tables

  或者:# /etc/init.d/mysql stop
            # mysqld_safe --user=mysql --skip-grant-tables --skip-networking &  --取消掉密码方式

4.service mysqld restart后,即可直接用mysql进入

5.mysql> update mysql.user set authentication_string=password('mysql123') where user='root' and Host = 'localhost';

   mysql> flush privileges;

   mysql> quit;

 --这里 mysql.user 下 再也没有5.7.8 之前的password 这个密码字段,由authentication_string 替代。

6.将/etc/my.cnf文件还原,重新启动mysql:service mysql restart,这个时候可以使用mysql -u root -p'123qwe'进入了

7.mysql>SET PASSWORD = PASSWORD('newpasswd'); 设置新密码

--如果不重设置初始密码(第7步)则报错: 

mysql> show databases;
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值