经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
当前位置:技术经验 » 数据库/运维 » MySQL » 查看文章
linux安装MySQL5.7记录
来源:cnblogs  作者:盐有点多  时间:2018/12/17 9:36:03  对本文有异议

目录

linux安装MySQL5.7记录

虚拟机未装过mysql,第一次安装mysql。自己指定安装目录,指定数据文件目录。
linux系统版本: CentOS 7.3 64位
安装源文件版本:mysql-5.7.24-linux-glibc2.12-x86_64.tar.gzip
mysql安装位置:/software/mysql-57
数据库文件数据位置:/data/mysql

安装步骤

1. 在根目录下创建文件夹/software和数据库数据文件/data/mysql

  1. [root@localhost ~]# mkdir /software/
  2. [root@localhost ~]# mkdir /data/mysql

2. 从官网下载相应的MySQL版本

下载安装包:https://dev.mysql.com/downloads/mysql/5.7.html#downloads

3. 解压并移动到/software目录下

  1. [root@localhost ~]# tar -zxvf mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz
  2. [root@localhost ~]# mv mysql-5.7.24-linux-glibc2.12-x86_64/ /software/mysql-57

4. 创建mysql用户组和mysql用户

  1. [root@localhost ~]# groupadd mysql
  2. [root@localhost ~]# useradd -r -g mysql mysql

5. 关联myql用户到mysql用户组中

  1. [root@localhost ~]# chown -R mysql:mysql /software/mysql-57/
  2. [root@localhost ~]# chown -R mysql:mysql /data/mysql/
  3. [root@localhost ~]# chown -R mysql /software/mysql-57/
  4. [root@localhost ~]# chown -R mysql /data/mysql

6. 更改文件夹的权限

  1. [root@localhost ~]# chmod -R 755 /software/mysql-57/

7. 安装libaio依赖包

如果系统之前装过其他的数据库,那么依赖包可能存在,可以用命令行测试下,如果不存在就进行安装。

  1. [root@localhost ~]# yum list installed | grep libaio
  2. # 如果没有就进行安装
  3. [root@localhost ~]# yum search libaio
  4. [root@localhost ~]# yum install libaio

8. 初始化mysql命令

  1. [root@localhost ~]# cd /software/mysql-57/bin
  2. [root@localhost ~]# ./mysqld --user=mysql --basedir=/software/mysql-57 --datadir=/data/mysql --initialize

在执行上面命令后会出几行信息。信息的最后一行为:

  1. # root@localhost: 后面跟的是mysql数据库登录的临时密码,各人安装生成的临时密码不一样,
  2. # 将密码复制保存,后续登录mysql要使用
  3. [Note] A temporary password is generated for root@localhost: ad8#*>y(f4Cq

9. 修改Mysql配置文件

  1. [root@localhost ~]# vim /software/mysql-57/support-files/mysql.server

主要是修改相应文件夹的位置,修改为之前创建的文件夹。
mysql.server
修改前

  1. ......
  2. if test -z "$basedir"
  3. then
  4. basedir=/usr/local/mysql
  5. bindir=/usr/local/mysql/bin
  6. if test -z "$datadir"
  7. then
  8. datadir=/usr/local/mysql/data
  9. fi
  10. sbindir=/usr/local/mysql/bin
  11. libexecdir=/usr/local/mysql/bin
  12. else
  13. ......

修改后

  1. ......
  2. mysqld_pid_file_path=
  3. if test -z "$basedir"
  4. then
  5. basedir=/software/mysql-57
  6. bindir=/software/mysql-57/bin
  7. if test -z "$datadir"
  8. then
  9. datadir=/data/mysql
  10. fi
  11. sbindir=/software/mysql-57/bin
  12. libexecdir=/software/mysql-57/bin
  13. else
  14. ......

将修改好的文件放入系统服务文件夹内。这样每次就可以通过service mysqld start来启动服务。

  1. [root@localhost ~]# cp /software/mysql/support-files/mysql.server /etc/init.d/mysqld
  2. [root@localhost ~]# chmod 755 /etc/init.d/mysqld

my.cnf

  1. [root@localhost ~]# vim /etv/my.cnf

修改前

  1. [mysqld]
  2. datadir=/var/lib/mysql
  3. socket=/var/lib/mysql/mysql.sock
  4. # Disabling symbolic-links is recommended to prevent assorted security risks
  5. symbolic-links=0
  6. # Settings user and group are ignored when systemd is used.
  7. # If you need to run mysqld under a different user or group,
  8. # customize your systemd unit file for mariadb according to the
  9. # instructions in http://fedoraproject.org/wiki/Systemd
  10. [mysqld_safe]
  11. log-error=/var/log/mariadb/mariadb.log
  12. pid-file=/var/run/mariadb/mariadb.pid

修改后

  1. [client]
  2. no-beep
  3. socket =/software/mysql-57/mysql.sock
  4. port=3306
  5. [mysql]
  6. default-character-set=utf8
  7. [mysqld]
  8. basedir=/software/mysql-57
  9. datadir=/data/mysql
  10. port=3306
  11. pid-file=/software/mysql-57/mysqld.pid
  12. skip-name-resolve
  13. socket = /software/mysql-57/mysql.sock
  14. character-set-server=utf8

其中skip_name_resolve。这个参数是禁止域名解析的。

10. 启动MySQL服务

因为新版本的mysql安全启动只认 /usr/local/mysql 这个路径。所以要进行相应的修改,通常有两种方法进行修改。

  • 建立软链接
  1. #local下没有mysql文件夹的话,新建一个
  2. [root@localhost ~]# cd /usr/local/mysql
  3. [root@localhost ~]# ln -s /sofware/mysql-57/bin/myslqd mysqld
  • 修改 mysqld_safe 文件
  1. [root@localhost ~]# vim /software/mysql/bin/mysqld_safe
  2. #将所有的/usr/local/mysql改为/software/mysql-57,保存退出

启动mysql:

  1. [root@localhost ~]# /etc/init.d/mysqld start
  2. 这样服务就能安全启动。

11. 登录mysql

  1. [root@localhost ~]# /software/mysql/bin/mysql -u root p
  2. # 输入临时密码。临时密码就是之前root@localhost:后面的内容

12. 修改mysql的登录密码

  1. ## password('123456') 括号中的123456就是修改后的的密码,不过建议密码不要这么简单
  2. >mysql set password=password('123456');
  3. ## 对root用户进行授权,"%"表示在任何一台电脑上都可以登录;也可以指定某台机器可以远程登录;
  4. >mysql grant all privileges on *.* to root@'%' identified by 'root';
  5. ## 刷新表
  6. >mysql flush privileges;

操作到这里,MySQL的基本安装过程已经完成,此时mysql的登录名root, 登录密码123456

13. MySQL服务的启动和关闭

查看mysql服务的两种方式

  1. [root@localhost ~]# ps -ef|grep mysql
  2. [root@localhost ~]# netstat -nlp|grep mysql

启动mysql服务

  1. [root@localhost ~]# service mysql start
  2. 如果服务在启动状态,直接重启服务用以下命令:
  3. [root@localhost ~]# service mysql restart

关闭mysql服务

  1. service mysql stop

其他MySQL相关的博文
MySQL5.7 常用用户操作
Centos7 firewall开放3306端口

 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号