Linux-CentOS6.9安装MySQL-5.7.22

#Linux-CentOS6.9安装MySQL-5.7.22

创建mysql用户组和用户

/usr/sbin/groupadd mysql
/usr/sbin/useradd -g mysql mysql   # 使用-r参数表示mysql用户是一个系统用户 不能登录 /usr/sbin/useradd -r -g mysql mysql

安装mysql依赖

yum install libaio

下载mysql

cd /data0/software
wget -c https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.22-linux-glibc2.12-x86_64.tar.gz

或手动下载

进入
https://dev.mysql.com/downloads/mysql/

进入
https://dev.mysql.com/downloads/mysql/5.7.html#downloads

选择 Linux - Generic

Linux - Generic (glibc 2.12) (x86, 64-bit), Compressed TAR Archive

下载
mysql-5.7.22-linux-glibc2.12-x86_64.tar.gz

解压到安装目录 /usr/local

tar -zxvf mysql-5.7.22-linux-glibc2.12-x86_64.tar.gz -C /usr/local

重命名

cd /usr/local
mv mysql-5.7.22-linux-glibc2.12-x86_64 mysql-5.7.22

mysql权限

chmod +w /usr/local/mysql-5.7.22
chown -R mysql:mysql /usr/local/mysql-5.7.22

到此mysql安装完毕;接下来我们创建一个mysql实例

创建mysql数据库存放目录

mkdir -p /data0/mysql/3306/data/
mkdir -p /data0/mysql/3306/binlog/
mkdir -p /data0/mysql/3306/relaylog/
chown -R mysql:mysql /data0/mysql/

初始化数据库

在5.7.6版本以前使用 mysql_install_db

/usr/local/mysql-5.7.22/bin/mysql_install_db --basedir=/usr/local/mysql-5.7.22 --datadir=/data0/mysql/3306/data --user=mysql

mysql-5.7.22 使用 mysqld --initialize

/usr/local/mysql-5.7.22/bin/mysqld --user=mysql --basedir=/usr/local/mysql-5.7.22 --datadir=/data0/mysql/3306/data --initialize

显示信息如下;记录下最后一行 root@localhost: Oeh5jU%nrYpy mysql生成的root临时密码;Oeh5jU%nrYpy

2018-04-25T02:57:00.167836Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2018-04-25T02:57:02.059707Z 0 [Warning] InnoDB: New log files created, LSN=45790
2018-04-25T02:57:02.287762Z 0 [Warning] InnoDB: Creating foreign key constraint system tables.
2018-04-25T02:57:02.379891Z 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: 544049f1-4834-11e8-b5c2-0800274cda33.
2018-04-25T02:57:02.382838Z 0 [Warning] Gtid table is not ready to be used. Table ‘mysql.gtid_executed’ cannot be opened.
2018-04-25T02:57:02.391178Z 1 [Note] A temporary password is generated for root@localhost: Oeh5jU%nrYpy

mysql配置

vi /etc/my3306.cnf

[mysqld]
basedir=/usr/local/mysql-5.7.22/
datadir=/data0/mysql/3306/data/
socket=/tmp/mysql3306.sock
user=mysql
port=3306

# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0

# 允许向数据库插入空值
sql-mode=NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

[mysqld_safe]
log-error=/tmp/mysqld3306.log
pid-file=/tmp/mysqld3306.pid

[client]
socket = /tmp/mysql3306.sock

启动mysql服务

/usr/local/mysql-5.7.22/bin/mysqld_safe --defaults-file=/etc/my3306.cnf &

查看是否启动成功

ps -ef |grep mysql

能看到类似下面的信息,说明启动成功;

/bin/sh /usr/local/mysql-5.7.22/bin/mysqld_safe --defaults-file=/etc/my3306.cnf
/usr/local/mysql-5.7.22/bin/mysqld --defaults-file=/etc/my3306.cnf --basedir=/usr/local/mysql-5.7.22/ --datadir=/data0/mysql/3306/data --plugin-dir=/usr/local/mysql-5.7.22//lib/plugin --user=mysql --log-error=/tmp/mysqld3306.log --pid-file=/tmp/mysqld3306.pid --socket=/tmp/mysql3306.sock

连接mysql

/usr/local/mysql-5.7.22/bin/mysql -uroot -pOeh5jU%nrYpy -P3306 -hlocalhost

如果连接不上加 -S参数

/usr/local/mysql-5.7.22/bin/mysql -uroot -pOeh5jU%nrYpy -S /tmp/mysql3306.sock

连上后,在做任何操作前,mysql要求要改掉root的临时密码后才能进行操作;

ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
mysql> alter user 'root'@'localhost' identified by 'xxxxxxx';

alter user 'root'@'localhost' identified by '123456';

接下来我们再创建一个mysql实例,与第一个实例步骤一样,换一下端口就可以了;

创建mysql数据库存放目录

mkdir -p /data0/mysql/3307/data/
mkdir -p /data0/mysql/3307/binlog/
mkdir -p /data0/mysql/3307/relaylog/
chown -R mysql:mysql /data0/mysql/

初始化mysql3307数据库,记录临时密码

/usr/local/mysql-5.7.22/bin/mysqld --user=mysql --basedir=/usr/local/mysql-5.7.22 --datadir=/data0/mysql/3307/data --initialize

2018-04-25T04:25:30.859338Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2018-04-25T04:25:32.789208Z 0 [Warning] InnoDB: New log files created, LSN=45790
2018-04-25T04:25:33.120661Z 0 [Warning] InnoDB: Creating foreign key constraint system tables.
2018-04-25T04:25:33.188472Z 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: b1bd5dc3-4840-11e8-b8f8-0800274cda33.
2018-04-25T04:25:33.191384Z 0 [Warning] Gtid table is not ready to be used. Table ‘mysql.gtid_executed’ cannot be opened.
2018-04-25T04:25:33.195451Z 1 [Note] A temporary password is generated for root@localhost: phHPJKKOr0/_

mysql3307配置 与3306配置一样,把全部3306改为3307

vi /etc/my3307.cnf

启动mysql3307

/usr/local/mysql-5.7.22/bin/mysqld_safe --defaults-file=/etc/my3307.cnf &

连接mysql3307 并更改临时密码

/usr/local/mysql-5.7.22/bin/mysql -uroot -p'phHPJKKOr0/_' -P3307 -hlocalhost

mysql> alter user 'root'@'localhost' identified by '123456';

配置开机自动启动

vi /etc/rc.local

在末尾增加两行

/usr/local/mysql-5.7.22/bin/mysqld_safe --defaults-file=/etc/my3306.cnf &
/usr/local/mysql-5.7.22/bin/mysqld_safe --defaults-file=/etc/my3307.cnf &

一定要注意最后的 & 一定不能少 否则CentOS系统将启不来 会一直卡在进度条~~~!!!

创建快捷方式

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

连接mysql不用输入全路径了

mysql -uroot -p123456

mysql -uroot -p123456 -P3307

新建mysql用户 并授权外部访问

mysql -uroot -p123456 -h127.0.0.1 -P3306
GRANT ALL PRIVILEGES ON *.* TO 'cuber'@'%' IDENTIFIED BY '12345678';
exit;

mysql -uroot -p123456 -h127.0.0.1 -P3307
GRANT ALL PRIVILEGES ON *.* TO 'cuber'@'%' IDENTIFIED BY '12345678';
exit;

修改防火墙配置,增加两行

vi /etc/sysconfig/iptables

-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3307 -j ACCEPT

重启防火墙

service iptables restart

外部可以直接使用cuber用户访问mysql数据库

mysql -ucuber -p12345678 -h100.100.100.100 -P3306

mysql -ucuber -p12345678 -h100.100.100.100 -P3307

参考网址

https://www.linuxidc.com/Linux/2016-04/130414.htm
https://www.cnblogs.com/kanyun/p/8075414.html
https://www.cnblogs.com/coderls/p/6848873.html
https://blog.csdn.net/sunggff/article/details/74611780

http://zyan.cc/nginx_php_v6/
http://zyan.cc/nginx_php_v7/

GRANT ALL PRIVILEGES ON . TO ‘admin’@‘localhost’ IDENTIFIED BY ‘123456’;
GRANT ALL PRIVILEGES ON . TO ‘admin’@‘127.0.0.1’ IDENTIFIED BY ‘123456’;

grant Replication client, replication slave, PROCESS on . to repl@‘10.10.%’ identified by ‘123456’;

已标记关键词 清除标记
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页