Linux下MySQL的安装

Linux下MySQL的安装

MySQL安装

安装编译工具及文件
yum -y install gcc gcc-c++ make autoconf libtool-ltdl-devel gd-devel freetype-devel libxml2-devel libjpeg-devel libpng-devel openssl-devel curl-devel bison patch unzip
libmcrypt-devel libmhash-devel ncurses-devel sudo bzip2 flex libaio-devel
安装cmake 编译器
 下载: wget http://www.cmake.org/files/v3.1/cmake-3.1.1.tar.gz
解压: tar zxvf cmake-3.1.1.tar.gz
切换目录: cd cmake-3.1.1
编译安装: ./bootstrap   make && make install
安装MySQL
下载: wget http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.15.tar.gz
解压: tar zxvf mysql-5.6.15.tar.gz
切换目录: cd mysql-5.6.15
编译安装: cmake -DCMAKE_INSTALL_PREFIX=/usr/local/webserver/mysql/ -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DDEFAULT_CHARSET=utf8
-DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1
-DWITH_READLINE=1 -DWITH_INNODB_MEMCACHED=1 -DWITH_DEBUG=OFF -DWITH_ZLIB=bundled -DENABLED_LOCAL_INFILE=1 -DENABLED_PROFILING=ON -DMYSQL_MAINTAINER_MODE=OFF
-DMYSQL_DATADIR=/usr/local/webserver/mysql/data -DMYSQL_TCP_PORT=3306
make && make install
查看版本: /usr/local/webserver/mysql/bin/mysql --version
MySQL配置
  1. 创建mysql运行使用的mysql :

    /usr/sbin/groupadd mysql

    /usr/sbin/useradd -g mysql mysql

  2. 创建binlog和库的存储路径并赋予mqsql用户权限

    mkdir -p /usr/local/webserver/mysql/binlog/www/data_mysql
    chown mysql.mysql /usr/local/webserver/mysql/binlog/ /www/data_mysql
  3. 创建my.cn配置文件

    将/etc/my.cn替换为:

    $ cat /etc/my.cnf

    [client]
    port = 3306
    socket = /tmp/mysql.sock
    [mysqld]
    replicate-ignore-db = mysql
    replicate-ignore-db = test
    replicate-ignore-db = information_schema
    user = mysql
    port = 3306
    socket = /tmp/mysql.sock
    basedir = /usr/local/webserver/mysql
    datadir = /www/data_mysql
    log-error = /usr/local/webserver/mysql/mysql_error.log
    pid-file = /usr/local/webserver/mysql/mysql.pid
    open_files_limit = 65535
    back_log = 600
    max_connections = 5000
    max_connect_errors = 1000
    table_open_cache = 1024
    external-locking = FALSE
    max_allowed_packet = 32M
    sort_buffer_size = 1M
    join_buffer_size = 1M
    thread_cache_size = 600
    #thread_concurrency = 8
    query_cache_size = 128M
    query_cache_limit = 2M
    query_cache_min_res_unit = 2k
    default-storage-engine = MyISAM
    default-tmp-storage-engine=MYISAM
    thread_stack = 192K
    transaction_isolation = READ-COMMITTED
    tmp_table_size = 128M
    max_heap_table_size = 128M
    log-slave-updates
    log-bin = /usr/local/webserver/mysql/binlog/binlog
    binlog-do-db=oa_fb
    binlog-ignore-db=mysql
    binlog_cache_size = 4M
    binlog_format = MIXED
    max_binlog_cache_size = 8M
    max_binlog_size = 1G
    relay-log-index = /usr/local/webserver/mysql/relaylog/relaylog
    relay-log-info-file = /usr/local/webserver/mysql/relaylog/relaylog
    relay-log = /usr/local/webserver/mysql/relaylog/relaylog
    expire_logs_days = 10
    key_buffer_size = 256M
    read_buffer_size = 1M
    read_rnd_buffer_size = 16M
    bulk_insert_buffer_size = 64M
    myisam_sort_buffer_size = 128M
    myisam_max_sort_file_size = 10G
    myisam_repair_threads = 1
    myisam_recover
    interactive_timeout = 120
    wait_timeout = 120
    skip-name-resolve
    #master-connect-retry = 10
    slave-skip-errors = 1032,1062,126,1114,1146,1048,1396
    #master-host = 192.168.1.2
    #master-user = username
    #master-password = password
    #master-port = 3306
    server-id = 1
    loose-innodb-trx=0
    loose-innodb-locks=0
    loose-innodb-lock-waits=0
    loose-innodb-cmp=0
    loose-innodb-cmp-per-index=0
    loose-innodb-cmp-per-index-reset=0
    loose-innodb-cmp-reset=0
    loose-innodb-cmpmem=0
    loose-innodb-cmpmem-reset=0
    loose-innodb-buffer-page=0
    loose-innodb-buffer-page-lru=0
    loose-innodb-buffer-pool-stats=0
    loose-innodb-metrics=0
    loose-innodb-ft-default-stopword=0
    loose-innodb-ft-inserted=0
    loose-innodb-ft-deleted=0
    loose-innodb-ft-being-deleted=0
    loose-innodb-ft-config=0
    loose-innodb-ft-index-cache=0
    loose-innodb-ft-index-table=0
    loose-innodb-sys-tables=0
    loose-innodb-sys-tablestats=0
    loose-innodb-sys-indexes=0
    loose-innodb-sys-columns=0
    loose-innodb-sys-fields=0
    loose-innodb-sys-foreign=0
    loose-innodb-sys-foreign-cols=0

    slow_query_log_file=/usr/local/webserver/mysql/mysql_slow.log
    long_query_time = 1
    [mysqldump]
    quick
    max_allowed_packet = 32M
  4. 初始化数据库

    /usrlocal/webserver/mysql/scripts/mysql_install_db --defaults-file=/etc/my.cnf --user=mysql
  5. 创建开机启动的脚本

    cd /usr/local/webserver/mysql
    cp support-fiels/mysql.server /ect/rc.d/init.d/mysqld
    chkconfig --add mysqld
    chkconfig --level 35 mysqld on
  6. 启动mysql服务器

    serveice mysqld start
  7. 连接MySQL

    /usr/local/erbserver/mysql/bin/mysql -u root -p
修改MYSQL用户密码
mysqladmin -u用户名 -p旧密码 password新密码

SET PASSWORD FOR '用户名@主机'=PASSWORD('密码')

创建并授权
grant all privileges on *.* to 用户名@'%' identified by '密码' with grant option;
其他命令
  1. service mysqld start 启动

  2. service mysqld stop 停止

  3. service mysqld restart 重启

  4. service mysql reload 重新配置

原文地址:https://www.cnblogs.com/lsb123/p/13803320.html