• mysql安装部署文档


    1、准备

    Linux:CentOS 7
    
    MySQL:mysql-5.7.30-linux-glibc2.12-x86_64.tar.gz
    
    http://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.30-linux-glibc2.12-x86_64.tar.gz
    
    数据目录:/data/mysqldata
    
    数据库安装目录:/usr/local/mysql

    2、环境检测

    1)查看系统有无安装mariadb
    
    rpm -qa | grep mariadb
    
    mariadb-libs-5.5.68-1.el7.x86_64
    
    注意:如果mariadb只是系统自带,并未使用,可以卸载系统自带mariadb。
    
    (2)卸载mariadb
    
    rpm -e --nodeps 'rpm -qa|grep mariadb'

    3、安装mysql

    1)备份etc目录下的my.cnf文件
    
    cp /etc/my.cnf /etc/my.cnfbak 
    
    (2)创建mysql用户
    
     useradd mysql
    
    (3)将mysql离线包(mysql-5.7.30-linux-glibc2.12-x86_64.tar.gz)上传至服务器/data/tools/目录,该目录可根据实际情况选择。
    
    (4)解压到指定文件夹下(放在/usr/local/下)
    
    cd /data/tools
    
    tar -zxvf /data/tools/mysql-5.7.30-linux-glibc2.12-x86_64.tar.gz -C /usr/local/5)重命名为mysql文件夹
    
    cd /usr/local/
    
    mv mysql-5.7.21-linux-glibc2.12-x86_64/ /usr/local/mysql/6)更改所属的组和用户
    
    cd /usr/local/
    
    chown -R mysql:mysql mysql
    
    (7)创建数据目录,并修改目录权限
    
    cd /data
    
    mkdir mysqldata
    
    chown -R mysql:mysql mysqldata

    4、修改mysql配置

    1)修改/etc/my.cnf
    
    vim /etc/my.cnf
    
    [mysqld]
    
    port=3306  #设置3306端口
    
    datadir=/data/mysqldata  #设置mysql数据库的数据的存放目录
    
    basedir=/usr/local/mysql  #设置mysql的安装目录
    
    socket=/var/lib/mysql/mysql.sock
    
    character_set_server=utf8   #服务端使用的字符集
    
    lower_case_table_names=1  #表名存储在磁盘是小写的,但是比较的时候是不区分大小写
    
    max_connections=2000  #允许最大连接数
    
    innodb_buffer_pool_size=2147483648 (2G)
    
    # Specifies the size of the buffer for the index,1/16
    
    key_buffer_size = 8G  #指定索引缓冲区大小
    
    thread_stack = 256K  #线程堆栈大小
    
    sort_buffer_size=12M  #MySQL执行排序使用的缓冲大小
    
    read_buffer_size=8M  # MySQL读入缓冲区大小
    
    join_buffer_size=16M  #联合查询操作所能使用的缓冲区大小
    tmp_table_size
    = 256M #表缓冲大小
    read_rnd_buffer_size
    =16M #MySQL的随机读缓冲区大小
    innodb_print_all_deadlocks
    = 1 #保存死锁日志
    innodb_lock_wait_timeout
    =100 #InnoDB事务在被回滚之前可以等待一个锁定的超时秒数
    slow_query_log_file
    =/data/mysqldata/logs/slow.log #慢查询日志
    sql_mode
    =NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES [mysqld_safe] log-error=/var/log/mysqld.log #错误日志 pid-file=/var/run/mysqld/mysqld.pid #后台程序的pid

    5、初始化

    (1)初始化mysql

    cd /usr/local/mysql
    
    bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql/ --datadir=/data/mysqldata/
    
    初始化成功会随机生成数据库root用户密码

    (2)复制启动脚本并添加可执行权限

    cd /usr/local/mysql
    cp ./support-files/mysql.server /etc/init.d/mysqld
    chmod a+x /etc/init.d/mysqld
    /etc/init.d/mysqld restart
    Shutting down MySQL.. SUCCESS!
    Starting MySQL. SUCCESS!

    (3)设置开机启动

    chkconfig --add mysqld
    chkconfig --list mysqld

    (4)配置mysql环境变量

    vi /etc/profile
    在文本最后添加系统环境变量
    #set mysql env
    export PATH=$PATH:/usr/local/mysql/bin
     
    source /etc/profile(使配置文件生效)

    6、修改默认密码,添加账户

    (1)修改root用户密码

    root密码为执行初始化是生成的随机密码(VIi:Tohsb1YX)

    mysql -u root -p

    如果启动mysql找不到mysql.sock,则使用软连接
    ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock
    mysql -u root -p
    Enter password: 

    (2)修改mysql的root用户密码

    set password = password('密码');

    (3)创建管理员用户

    新建授权账户,这里 @'%' 表示在任何主机都可以登录,fdmp是mysql用户名,'密码'是密码

    GRANT ALL ON *.* TO fdmp@'%'  IDENTIFIED BY '密码' WITH GRANT OPTION;

    (4)连接测试

  • 相关阅读:
    如何在项目中添加Log4net_web.config
    数据库语法集合
    在asp.net 中web.config配置错误页
    【AngularJs】---JSONP跨域访问数据传输(JSON_CALLBACK)
    菜鸟教程下笔记借鉴
    AngularJs ng-repeat重复项异常解决方案
    AngularJS
    基于node安装gulp-一些命令
    理解Flexbox:你需要知道的一切
    深入理解 flex 布局以及计算_Flexbox, Layout
  • 原文地址:https://www.cnblogs.com/liviniu/p/14957685.html
Copyright © 2020-2023  润新知