linux下mysql5.5 5.6 5.7安装教程

         Mysql5.5源码安装

(因为云盘买有数据盘,所有把数据挂载在opt 下面的目录)

安装MySQL

1.添加mysql用户,创建mysql的数据目录:

groupadd mysql

mkdir -pv /opt/data/mysql

useradd -r -g mysql -d /opt/data/mysql -s /sbin/nologin mysql

 chown -R mysql.mysql /opt/data/mysql

2.安装cmake及依赖:

yum install cmake gcc* ncurses-devel -y

3.下载MySQL安装包:

cd /usr/local/src

wget https://cdn.mysql.com//archives/mysql-5.5/mysql-5.5.49.tar.gz

4.编译安装MySQL:

tar -xvf mysql-5.5.49.tar.gz

cd mysql-5.5.49

 cmake -DCMAKE_INSTALL_PREFIX=/usr/local/product/mysql5.5.49 -DDEFAULT_CHARSET=utf8 -DENABLED_LOCAL_INFILE=1 -DMYSQL_DATADIR=/opt/data/mysql -DWITH_EXTRA_CHARSETS=all -DWITH_READLINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DMYSQL_TCP_PORT=3306 -DDEFAULT_COLLATION=utf8_general_ci

make && make install

ln -s /usr/local/product/mysql5.5.49 /usr/local/mysql

chown -R mysql.mysql /usr/local/mysql

5.拷贝mysql的配置文件:

cd /usr/local/mysql/support-files/

cp my-medium.cnf /opt/data/mysql/my.cnf

cp mysql.server /etc/init.d/mysqld

 chmod +x /etc/init.d/mysqld

6.初始化MySQL:

cd /usr/local/mysql/scripts

./mysql_install_db --user=mysql --basedir=/usr/local/mysql/ --datadir=/opt/data/mysql/

7.修改MySQL配置文件my.cnf中数据目录(【mysqld】处添加)

vim /opt/data/mysql/my.cnf

加入下面这句数据库的路径

datadir=/opt/data/mysql/

8.启动MySQL:

[root@zabbix ~]# /etc/init.d/mysqld start Starting MySQL... SUCCESS!

9.把mysql加入系统服务项,并设置开机启动

chkconfig --add mysqld

chkconfig mysqld on

service mysqld start

10.检查mysql是否成功启动

ps aux |grep mysqld

11.##进入mysql

/usr/local/mysql/bin/mysql

查看mysql版本

select version();

12.创建一个hz2data数据库(分号不能漏)

use mysql

create database sdkdata;

13.创建一个mysql登录用户,用户名为:root 密码为@#$2017

grant all on sdkdata.* to 'david'@'localhost' identified by 'david6677';

grant all on sdkdata.* to 'root'@'localhost' identified by '@#$2017';

14.刷新权限

flush privileges;

15.允许远navicat远程连接

use mysql

显示已有的数据库

show databases;

允许任何IP远程连接数据库sdkdata。(只要设置允许mysql的远程连接,其它新建库,也会默认允许远程连接了)

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'aaaa' WITH GRANT OPTION;

flush privileges;

mysql忘记root 密码

http://www.cnblogs.com/sbaicl/articles/3132010.html

##################################

mysql修改繁琐登录方式

默认的/usr/local/mysql/bin/mysql

1.vim ~/.bash_profile

2. 增加如下内容(在最后面加入如下)

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

使其全系统生效

3 source ~/.bash_profile

这样设置完成后即可mysql -uroot -p 快捷的mysql登录

    mysql5.6 二进制安装

 

1 cd /usr/local/src

下载二进制包

2 wget http://mirrors.sohu.com/mysql/MySQL-5.6/mysql-5.6.36-linux-glibc2.5-x86_64.tar.gz

解压包

3 tar zxvf mysql-5.6.36-linux-glibc2.5-x86_64.tar.gz

mysql的数据 移动到/usr/local/mysql 目录下

4 mv mysql-5.6.36-linux-glibc2.5-x86_64 /usr/local/mysql

5 cd /usr/local/mysql

创建mysql 用户

6 useradd mysql

7创建mysql 数据存放路径

mkdir -p /opt/data/

8 初始化数据库

./scripts/mysql_install_db --user=mysql --datadir=/opt/data/mysql

9 移动系统默认配置文件到 /etc目录下

cp support-files/my-default.cnf /etc/my.cnf

10移动mysql启动文件mysql.server 到/etc/init.d目录下

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

11 vim /etc/init.d/mysqld

配置mysql的运行目录和数据存放目录,如图中绿色所示。

12

chkconfig --add mysqld

chkconfig mysqld on

13 启动mysql

/etc/init.d/mysqld start

kill all mysqld 杀死mysqld进程)

14 登录mysql,设置允许远程连接

创建一个数据库

create database sdkdata

grant all on sdkdata.* to 'root'@'localhost' identified by '@#$2017';

15 允许任何ip远程连接到sdkdata这个数据库

grant all privileges on sdkdata.* to root@"%" identified by "@#$2017" ;

16刷新权限

flush privileges;

                                                  

mysql5.7 二进制包安装

1. 下载包 

wget   http://mirrors.sohu.com/mysql/MySQL-5.7/mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz

2. 解压 

tar  -zxvf mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz

mv  mysql-5.7.17-linux-glibc2.5-x86_64  /usr/local/mysql

3. 初始化

useradd -M -s /sbin/nologin  mysql 

mkdir -p /opt/data/mysql

chown mysql /opt/data/mysql

注意bin前面的 .为当前bin目录,不能少

cd /usr/local/mysql

./bin/mysqld  --initialize --user=mysql --datadir=/opt/data/mysql

注意,这一步最后一行会有一个提示

[Note] A temporary password is generated for root@localhost: B*s1i(*,kXwg

 

最后面的字符串 B*s1i(*,kXwg root密码。

./bin/mysql_ssl_rsa_setup --datadir=/opt/data/mysql

 

4. 拷贝配置文件和启动脚本

cp support-files/my-default.cnf  /etc/my.cnf  

 

5.提示是否覆盖,输入yes

6 vim /etc/my.cnf 编辑或者修改

basedir = /usr/local/mysql

datadir = /opt/data/mysql

port = 3306

socket = /tmp/mysql.sock

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

vi /etc/init.d/mysqld   //编辑或者修改

basedir=/usr/local/mysql

datadir=/opt/data/mysql

5. 启动服务

/etc/init.d/mysqld start

6. 设置root密码

使用初始化密码登录

/usr/local/mysql/bin/mysql -uroot -p'B*s1i(*,kXwg'  //进入后直接设置密码

mysql>set password = password('mypass');   //一定要设置一下新密码

退出来,再使用新的密码登录就可以了

还有一种情况,就是不知道初始化密码

vi /etc/my.cnf

[mysqld]下面增加一行

skip-grant-tables

重启  /etc/init.d/mysqld restart

/usr/local/mysql/bin/mysql -uroot 

use mysql;

update user set authentication_string=PASSWORD('Kubi201788@#$') where User='root';

flush privileges;

退出来后,更改my.cnf,去掉刚加的 skip-grant-tables

重启 /etc/init.d/mysqld restart

此时就可以使用新的密码了。

 

 

原文地址:https://www.cnblogs.com/wolfboy55-163-com/p/8136050.html