mysql 开垦进级篇类别 29 数据库二进制包安装

发布时间:2019-11-04  栏目:SQL  评论:0 Comments

概述  

  对于二进制安装,优点是足以设置到别的路线下,灵活性好,后生可畏台服务器能够设置多少个mysql。劣点是现已绎过编译,品质不及源码编写翻译得好,无法灵活定制编写翻译参数。纵然顾客即不想安装最简易却远远不够灵活的RPM包,又不想安装复杂费时的源码包,那么已编写翻译好的二进制包将是最佳的精选。

1. centos 7安装专门的学问

  对于mysql二进制安装,小编这里在采纳风流倜傥台新的centos系统。打算好VMware,Xftp-6.0,
Xshell-6.0。在VMware中网络使用桥接方式,分配20G硬盘,1个计算机4个基本。步入centos安装分界面后接阿拉木图南语,时区法国首都,配置分区/boot
200M, swap 2G, / 10G。
销毁格式采用采用改良。关闭kdump。手动配置以太网,共用windows上的dns和网关以至网段。最终设置好密码,等待安装到位。

  系统装置成功后,使用Xshell新建会话连接登陆。
  图片 1
  再测量检验网络
  图片 2

  查看当前陈设好的ip地址 172.168.18.201
  图片 3

  在windows端拼下新类别IP地址
  图片 4

  在windows使用xftp新建会话连接
  图片 5

  
  在centos的usr目录下新建五个tool文件夹,寄放mysql安装包,如下图所示:

  图片 6

  图片 7

   查看如下:

   图片 8

一.步骤1: 解压glib包

-- 在 /usr/local 下创建一个mysql文件夹,用来存放
[root@hsr local]# mkdir mysql
[root@hsr local]# ls
bin  etc  games  include  lib  lib64  libexec  mysql  sbin  share  src

-- 在原有/usr/tool目录将gz压缩包解压
[root@hsr tool]# tar -zxvf mysql-5.7.23-linux-glibc2.12-x86_64.tar.gz
mysql-5.7.23-linux-glibc2.12-x86_64/bin/myisam_ftdump
mysql-5.7.23-linux-glibc2.12-x86_64/bin/myisamchk
mysql-5.7.23-linux-glibc2.12-x86_64/bin/myisamlog
mysql-5.7.23-linux-glibc2.12-x86_64/bin/myisampack
mysql-5.7.23-linux-glibc2.12-x86_64/bin/mysql
mysql-5.7.23-linux-glibc2.12-x86_64/bin/mysql_client_test_embedded
mysql-5.7.23-linux-glibc2.12-x86_64/bin/mysql_config_editor
.....

--将解压的文件复制到/usr/local/mysql目录下
[root@hsr tool]# sudo cp -r mysql-5.7.23-linux-glibc2.12-x86_64 /usr/local/mysql

--在mysql-->mysql-5.7.23-linux-glibc2.12-x86_64路径下 解压的文件共9个 目录如下: 
[root@hsr mysql]# ls mysql-5.7.23-linux-glibc2.12-x86_64 bin COPYING docs include lib man README share support-files

  注意:mysql-5.7.23-linux-glibc2.12-x86_64目录档次要去掉,变为/usr/local/mysql
下的9个目录,在篇章前面会去掉那层。

  图片 9

二. 步骤2:    

   2.1 添加mysql用户 useradd -r -g 用户名 用户组

[root@hsr mysql]# groupadd mysql
[root@hsr mysql]# useradd -r -g mysql mysql

  2.2 切换成 /usr/local/mysql 目录下,改动目录具备者为mysql

[root@hsr mysql]# chown -R  mysql.mysql /usr/local/mysql

  2.3 新条件安装libaio包 mysql 信任于libaio

[root@hsr mysqld]# yum search libaio

三 步骤3:  

  安装mysql,使用 –initialize,basedir
基本功目录,datadir 为多少目录。

[root@hsr ~]# cd /usr/local/mysql/mysql-5.7.23-linux-glibc2.12-x86_64/bin
[root@hsr bin]# ./mysqld  --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
2018-08-23T06:56:21.157088Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2018-08-23T06:56:21.157246Z 0 [ERROR] Can't find error-message file '/usr/local/mysql/share/errmsg.sys'. Check error-message file location and 'lc-messages-dir' configuration directive.
2018-08-23T06:56:26.287087Z 0 [Warning] InnoDB: New log files created, LSN=45790
2018-08-23T06:56:27.059913Z 0 [Warning] InnoDB: Creating foreign key constraint system tables.
2018-08-23T06:56:27.138616Z 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: a7e28575-a6a1-11e8-af13-000c29affb65.
2018-08-23T06:56:27.154064Z 0 [Warning] Gtid table is not ready to be used. Table 'mysql.gtid_executed' cannot be opened.
2018-08-23T06:56:27.155635Z 1 [Note] A temporary password is generated for root@localhost: ro0ssOGT?ocf

四步骤4:

  4.1 创建RSA
private key。

[root@hsr bin]# bin/mysql_ssl_rsa_setup --datadir=/usr/local/mysql/data

  图片 10

  4.2 修正当前目录具有者为 root 客户,改良data 目录具有者为 mysql

[root@hsr bin]# chown -R root:root /usr/local/mysql
[root@hsr bin]# chown -R mysql:mysql /usr/local/mysql/data

 五.步骤5 配置mysql(mysql.server)和my.cnf文件

--检查 etc/my.cnf文件是否存在 (二进制安装,默认配置文件在/etc/my.cnf)
    [root@hsr etc]# find -name  my.cnf
    ./my.cnf

 --将support-files 目录下的mysql.server文件复制到etc/init.d下
    [root@hsr ~]# cd /usr/local/mysql/mysql-5.7.23-linux-glibc2.12-x86_64/support-files
    [root@hsr support-files]# cp mysql.server /etc/init.d/mysql

 -- 配置/etc/init.d/mysql服务文件 添加basedir和datadir
    [root@hsr support-files]# vim /etc/init.d/mysql

    图片 11

   校勘my.cnf  配置以下几个参数(细心:chkconfig — level 35 mysqld on
不要加上,后边报错,又得去掉
)
    图片 12

 六.步骤6 启动mysql

[root@hsr bin]# service mysql start
/etc/init.d/mysql: line 239: my_print_defaults: command not found
    Starting MySQL ERROR! Couldn't find MySQL server (/usr/local/mysql/bin/mysqld_safe) 

--提示未找到路径,需要把"mysql-5.7.23-linux-glibc2.12-x86_64" 文件夹去掉,使用mv 将里面的文件移到/usr/locl/mysql下,共9个文件
[root@hsr bin]# mv /usr/local/mysql/mysql-5.7.23-linux-glibc2.12-x86_64/README /usr/local/mysql
[root@hsr bin]# mv /usr/local/mysql/mysql-5.7.23-linux-glibc2.12-x86_64/COPYING /usr/local/mysql
[root@hsr bin]# mv /usr/local/mysql/mysql-5.7.23-linux-glibc2.12-x86_64/support-files /usr/local/mysql
[root@hsr bin]# mv /usr/local/mysql/mysql-5.7.23-linux-glibc2.12-x86_64/share /usr/local/mysql
[root@hsr bin]# mv /usr/local/mysql/mysql-5.7.23-linux-glibc2.12-x86_64/man /usr/local/mysql
[root@hsr bin]# mv /usr/local/mysql/mysql-5.7.23-linux-glibc2.12-x86_64/lib /usr/local/mysql
[root@hsr bin]# mv /usr/local/mysql/mysql-5.7.23-linux-glibc2.12-x86_64/include /usr/local/mysql
[root@hsr bin]# mv /usr/local/mysql/mysql-5.7.23-linux-glibc2.12-x86_64/docs /usr/local/mysql
[root@hsr bin]# mv /usr/local/mysql/mysql-5.7.23-linux-glibc2.12-x86_64/bin /usr/local/mysql

-- 再启动
[root@hsr bin]# service mysql start
Starting MySQL.2018-08-24T01:06:20.545225Z mysqld_safe error: log-error set to '/var/log/mariadb/mariadb.log', however file don't exists. Create writable for user 'mysql'.
 ERROR! The server quit without updating PID file (/usr/local/mysql/data/hsr.pid).

-- 提示/var/log/mariadb/mariadb.log 不存在, 打开my.cnf 能看到定义的默认路径
[mysqld_safe]
log-error=/var/log/mariadb/mariadb.log
pid-file=/var/run/mariadb/mariadb.pid

--创建目录 给权限
[root@hsr bin]# mkdir /var/log/mariadb 
[root@hsr bin]# touch /var/log/mariadb/mariadb.log 
[root@hsr bin]# chown -R mysql:mysql  /var/log/mariadb/

-- 再启动
[root@hsr bin]# service mysql start
Starting MySQL.... ERROR! The server quit without updating PID file (/usr/local/mysql/data/hsr.pid).

-- 错误信息是hsr.pid进程出问题,先查看下日志
[root@hsr ~]# cat /var/log/mariadb/mariadb.log

  图片 13
   在my.cnf中注释上面参数(#chkconfig –level 35 mysqld on),再启动
  图片 14
  上海体育场合意思是不可能成立mysql.sock.lock
文件,平时是权力不足,如下设置好权力,运维成功
  图片 15

七 登录mysql

[root@hsr ~]# mysql -u root -p
bash: mysql: 未找到命令

  未找到命令,是出于系统暗中同意会查找/usr/bin下的下令,假如这一个命令不在这里个目录下,就能够找不到命令,须要映射叁个链接到/usr/bin目录下,也正是创建三个链接文件。

[root@hsr ~]#  ln -s /usr/local/mysql/bin/mysql /usr/bin
[root@hsr ~]# mysql -u -root -p
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

--错误信息是不能连接到本地的socket ,系统默认找到了/tmp目录下,需要设置链接文件
[root@hsr tmp]# ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock

[root@hsr ~]# mysql -u -root -p
Enter password:

 八. 设置密码  

  8.1 展开my.cnf文件,加多skip-grant-tables,来重新恢复生机设置密码,如下所示
    图片 16
  8.2 运维服务,再次登陆,在输入密码处按回车键步向。

[root@hsr ~]# vim /etc/my.cnf
[root@hsr ~]# service mysql restart
Shutting down MySQL.. SUCCESS! 
Starting MySQL. SUCCESS! 
[root@hsr ~]# mysql -u root -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.7.23

  8.3 步入mysql后,改善密码

mysql> use mysql;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed

mysql> update user set authentication_string=password('123456') where user='root';
Query OK, 1 row affected, 1 warning (0.00 sec)
Rows matched: 1  Changed: 1  Warnings: 1

  退出mysql>quit;  编辑 my.cnf 注释掉#skip-grant-tables

 8.4 重启mysql服务,输入改过后的密码(123456)步入

[root@hsr ~]# service mysql restart
Shutting down MySQL.. SUCCESS! 
Starting MySQL. SUCCESS! 
[root@hsr ~]# mysql -u root -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.7.23

 九 远程登入

-- 登录到mysql后设置权限
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION; 
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
--  再设置密码
mysql> SET PASSWORD = PASSWORD('123456');
Query OK, 0 rows affected, 1 warning (0.00 sec)
-- 设置权限
mysql> ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
Query OK, 0 rows affected (0.00 sec)
-- 刷新权限 
mysql>  flush privileges;
Query OK, 0 rows affected (0.01 sec)
-- 设置远程登录权限
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION; 
Query OK, 0 rows affected, 1 warning (0.00 sec)

  – 在my.cnf中 加多端口,重启服务
  图片 17

-- 测试端口是否打开
[root@hsr ~]#  firewall-cmd    --query-port=3306/tcp
no
-- 防火墙设置
[root@hsr ~]# firewall-cmd --zone=public --add-port=3306/tcp --permanent
success
-- 重新加载
[root@hsr ~]# firewall-cmd --reload
success
-- 再次测试端口
[root@hsr ~]# firewall-cmd    --query-port=3306/tcp
yes

  – 在windows端拼通成功
  图片 18

  — 最终动用SQLyog连接成功
  图片 19
  图片 20

  

留下评论

网站地图xml地图