文章内容
MySQL 是最流行的关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle公司。
MySQL所使用的SQL语言是用于访问数据库的最常用标准化语言。
MySQL由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择MySQL作为网站数据库。
一、MySQL安装
1、安装编译工具及库文件
1 | 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 |
2、安装cmake编译器
1)下载地址
http://www.cmake.org/files/v3.1/cmake-3.1.1.tar.gz
1 | $ wget http: //www .cmake.org /files/v3 .1 /cmake-3 .1.1. tar .gz |
![MySQL安装配置插图 MySQL安装配置插图](https://static.ntan520.com/blog-media/2021/05/3602fdfd15b9c29777e4cda87864b8b8.png?x-oss-process=style/watermark)
2)解压安装包
1 | $ tar zxvf cmake-3.1.1. tar .gz |
3)进入安装包目录
1 | $ cd cmake-3.1.1 |
4)编译安装
1 2 | $ . /bootstrap $ make && make install |
3、安装 MySQL
1)下载地址
http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.15.tar.gz
1 | $ wget http: //dev .mysql.com /get/Downloads/MySQL-5 .6 /mysql-5 .6.15. tar .gz |
![MySQL安装配置插图2 MySQL安装配置插图2](https://static.ntan520.com/blog-media/2021/05/f15f254e25c42a2ef5505878d337d740.png?x-oss-process=style/watermark)
2)解压安装包
1 | $ tar zxvf mysql-5.6.15. tar .gz |
3)进入安装包目录
1 | $ cd mysql-5.6.15 |
4)编译安装
1 2 | $ 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 |
5)查看mysql版本
1 | $ /usr/local/webserver/mysql/bin/mysql --version |
![MySQL安装配置插图4 MySQL安装配置插图4](https://static.ntan520.com/blog-media/2021/05/78005f06dc9195b9878f889824b17778.png?x-oss-process=style/watermark)
二、MySQL配置
1、创建mysql运行使用的用户mysql
1 2 | $ /usr/sbin/groupadd mysql $ /usr/sbin/useradd -g mysql mysql |
2、创建binlog和库的存储路径并赋予mysql用户权限
1 2 | $ mkdir -p /usr/local/webserver/mysql/binlog /www/data_mysql $ chown mysql.mysql /usr/local/webserver/mysql/binlog/ /www/data_mysql/ |
3、创建my.cnf配置文件
将/etc/my.cnf替换为下面内容
01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 | $ 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、初始化数据库
1 | $ /usr/local/webserver/mysql/scripts/mysql_install_db --defaults- file = /etc/my .cnf --user=mysql |
显示如下信息:
1 2 3 4 5 6 | Installing MySQL system tables...2015-01-26 20:18:51 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details). OK Filling help tables...2015-01-26 20:18:57 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details). OK ... |
5、创建开机启动脚本
1 2 3 4 | $ cd /usr/local/webserver/mysql/ $ cp support-files /mysql .server /etc/rc .d /init .d /mysqld $ chkconfig --add mysqld $ chkconfig --level 35 mysqld on |
6、启动mysql服务器
1 | $ service mysqld start |
![MySQL安装配置插图6 MySQL安装配置插图6](https://static.ntan520.com/blog-media/2021/05/99ce72bb85967b53186ba92bd61414ce.png?x-oss-process=style/watermark)
7、连接 MySQL
1 | $ /usr/local/webserver/mysql/bin/mysql -u root -p |
![MySQL安装配置插图8 MySQL安装配置插图8](https://static.ntan520.com/blog-media/2021/05/b8f8797f11658da6d4ba8e27e300cb54.png?x-oss-process=style/watermark)
三、修改MySQL用户密码
1 | mysqladmin -u用户名 -p旧密码 password 新密码 |
或进入mysql命令行
1 | SET PASSWORD FOR '用户名' @ '主机' = PASSWORD (‘密码'); |
创建新用户并授权:
1 | grant all privileges on *.* to 用户名@ '%' identified by '密码' with grant option ; |
四、启动命令
- 启动:service mysqld start
- 停止:service mysqld stop
- 重启:service mysqld restart
- 重载配置:service mysqld reload