linux环境Mysql 5.7.13安装教程

来源:互联网 发布:8888端口干嘛的 编辑:程序博客网 时间:2024/06/02 02:02

linux环境Mysql 5.7.13安装教程

1系统约定
安装文件下载目录:/data/software
Mysql目录安装位置:/usr/local/mysql
数据库保存位置:/data/mysql
日志保存位置:/data/log/mysql

2下载mysql
在官网:http://dev.mysql.com/downloads/mysql/ 中,选择以下版本的mysql下载:

执行如下命名:
#mkdir /data/software
#cd /data/software
#wget http://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.13-linux-glibc2.5-x86_64.tar.gz

注:安装过程中如果系统缺少libaio 需要安装如下文件:


3解压压缩包到目标位置
# mkdir /usr/local/mysql
#cd /dat/software
#pwd
执行后如下:

#ls

#cd /usr/local
#pwd

# tar -xzvf /data/software/mysql-5.7.13-linux-glibc2.5-x86_64.tar.gz

#ls

--修改文件名
# mv mysql-5.7.13-linux-glibc2.5-x86_64 mysql         
#ls


4创建数据仓库目录
--/data/mysql 数据仓库目录
# mkdir /data/mysql         
#ls /data/


5新建mysql用户、组及目录
#      ---新建一个msyql组
# useradd -r -s /sbin/nologin -g mysql mysql -d /usr/local/mysql     ---新建msyql用户禁止登录shell

6改变目录属有者
#cd /usr/local/mysql
#pwd
#chown –R mysql .
#chgrp –R mysql .

#chown -R mysql /data/mysql

7配置参数
# bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql

 此处需要注意记录生成的临时密码,如上文:YLi>7ecpe;YP
#bin/mysql_ssl_rsa_setup  --datadir=/data/mysql

8修改系统配置文件

# cp my-default.cnf /etc/my.cnf
# cp mysql.server /etc/init.d/mysql

# vim /etc/init.d/mysql
修改以下内容:

# vim /etc/my.cnf
修改以下内容:

9启动mysql

#bin/mysqld_safe --user=mysql &

bin/mysql --user=root –p
--输入第6步生成的临时密码


mysql> set password=password('123456');

mysql>grant all privileges on *.* to root@'%' identified by '123456';

刷新权限
mysql> flush privileges;

mysql> use mysql;
mysql> select host,user from user;

10添加系统路径
# vim /etc/profile
添加:
export PATH=/usr/local/mysql/bin:$PATH
如下:

# source /etc/profile

11配置mysql自动启动
# chmod 755 /etc/init.d/mysql
# chkconfig --add mysql
# chkconfig --level 345 mysql on

查看是否添加成功

# chkconfig --list mysql  

mysqld          0:关闭  1:关闭  2:启用  3:启用  4:启用  5:启用  6:关闭  


ps:安装过程可能遇到的问题:

1、初始化 MySQL 配置表 

 执行mysql_install_db脚本,对mysql中的data目录进行初始化并创建一些系统表格。

 bin/mysql_install_db --user=mysql

 报错:

 2016-07-15 14:50:14 [WARNING] mysql_install_db is deprecated. Please consider switching to mysqld --initialize
 2016-07-15 14:50:14 [ERROR]   The data directory needs to be specified.

 需要指定data目录,注意mysql服务进程mysqld运行时会访问data目录,所以必须由启动mysqld进程的用户(就是我们之前设置的mysql用户)执行这个脚本,  或者用root  执行,但是加上参数--user=mysql。

 上文还有警告信息,说mysql_install_db 命令已经是弃用的,建议切换到mysqld --initialize命令

 注:

 mysql5.7和之前版本不同,很多资料上都是这个命令:../scripts/mysql_install_db --user=mysql,而mysql5.7的mysql_install_db命令是在bin目录下  的并且建议  用 mysqld --initialize命令

 mysql5.7之前版本初始化配置表命令:

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

 --user  启动mysql的用户

 --basedir  mysql安装目录

 --datadir  mysql数据仓库目录

 ①初始化表配置正确执行步骤:

[plain] view plain copy
 在CODE上查看代码片派生到我的代码片
  1. [root@rhel5-32 mysql]# mkdir data  
  2. [root@rhel5-32 mysql]# bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data  
  3. 2016-07-15T09:39:38.166396Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).  
  4. 2016-07-15T09:39:38.166941Z 0 [Warning] 'NO_ZERO_DATE', 'NO_ZERO_IN_DATE' and 'ERROR_FOR_DIVISION_BY_ZERO' sql modes should be used with strict mode. They will be merged with strict mode in a future release.  
  5. 2016-07-15T09:39:38.166976Z 0 [Warning] 'NO_AUTO_CREATE_USER' sql mode was not set.  
  6. 2016-07-15T09:39:39.486697Z 0 [Warning] InnoDB: New log files created, LSN=45790  
  7. 2016-07-15T09:39:39.699652Z 0 [Warning] InnoDB: Creating foreign key constraint system tables.  
  8. 2016-07-15T09:39:39.767191Z 0 [Warning] No existing UUID has been found, so we assume that this is the first time that this server has been started. Generating a new UUID: 0d154f38-4a70-11e6-8670-005056913e3a.  
  9. 2016-07-15T09:39:39.771851Z 0 [Warning] Gtid table is not ready to be used. Table 'mysql.gtid_executed' cannot be opened.  
  10. 2016-07-15T09:39:39.773073Z 1 [Note] A temporary password is generated for root@localhost: i7YCy.:jv6yr  

 注意最后一行,这也是和之有版本不同的地方,它给了root一个初始密码,后面要登录的时候要用到这个密码。

2、mysql5.7配置文件需要修改my.cnf关键配置, mysql5.7之前默认配置文件中是有配置项的,不用手动修改

[plain] view plain copy
 在CODE上查看代码片派生到我的代码片
  1. [mysqld]  
  2. basedir = /usr/local/mysql  
  3. datadir = /usr/local/mysql/data  
  4. port = 3306  
  5. socket = /usr/local/mysql/tmp/mysql.sock  
  6.    
  7. sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES  

 注意,tmp目录不存在,请创建之。否则会出错     创建后要赋予mysql权限,chown -R mysql:mysql tmp 
 如果mysql.sock指定到/tmp以外的目录,需要在my.cnf中添加[client]并且指定socket位置,
 否则登录mysql时会报错:ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
 应该是,默认会找tmp目录下的sock文件
参考网址:

安装:

http://www.jb51.net/article/87160.htm?pc

http://blog.csdn.net/bao19901210/article/details/51917641

Linux常用命令

http://blog.csdn.net/wojiaopanpan/article/details/7286430/



0 0
原创粉丝点击