时间:2021-08-24 08:46:58 | 栏目:Mysql | 点击:次
与源码版本安装过程基本一致,除了编译环节,本文只谈release版,即含有bin文件版本
好处:每个用户可安装属于自己的MySQL Server
目标主机系统:CentOS 6.8
用户:saojie(没有管理员权限)
目录:/home/saojie/mysql-5.7.18
下载
Linux Generic
地址:https://dev.mysql.com/downloads/mysql/
解压
tar zxvf mysql-5.7.18-linux-glibc2.5-x86_64.tar.gz mv mysql-5.7.18-linux-glibc2.5-x86_64 mysql-5.7.18
安装
写配置文件
将my.cnf放在mysql-5.7.18目录下
[mysqld] basedir = /home/saojie/mysql-5.7.18 datadir = /home/saojie/mysql-5.7.18/data log_error = /home/saojie/mysql-5.7.18/data/mysql_error.log port = 33306 #端口避免冲突 socket = /home/saojie/mysql-5.7.18/mysql.sock general_log = on sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
[mysql] socket = /home/saojie/mysql-5.7.18/mysql.sock
初始化
bin/mysqld --defaults-file=/home/saojie/mysql-5.7.18/my.cnf --initialize --user=saojie --basedir=/home/saojie/mysql-5.7.18/ --datadir=/home/saojie/mysql-5.7.18/data
初始化会生成一个root的随机密码
启动
第一次启动加socket避免连接到别人的MySQL Server,且因为root默认是没有远程访问权限,刚开始root无法通过指定IP和端口连接
bin/mysqld --defaults-file=/home/saojie/mysql-5.7.18/my.cnf & mysql -uroot -p --socket=/home/saojie/mysql-5.7.18/mysql.sock #不加socket可能会连接到别的MySQL Server
关闭
bin/mysqladmin -uroot -proot --socket=/home/saojie/mysql-5.7.18/mysql.sock shutdown
或
bin/mysqladmin -hxxx -Pxxx -uroot -proot shutdown
其他问题
JDBC连接缓慢
在配置文件[mysqld]下加上skip-name-resolve再重启,跳过DNS查询
不把MySQL日志输出到saojie用户控制台
在[mysqld]下指定log_error地址
便捷脚本
#!/bin/bash function client(){ bin/mysql --defaults-extra-file=/home/saojie/mysql-5.7.18/my.cnf } function server(){ bin/mysqld --defaults-extra-file=/home/saojie/mysql-5.7.18/my.cnf & } function stop(){ bin/mysqladmin -uroot -p --socket=/home/saojie/mysql-5.7.18/mysql.sock shutdown } function pid(){ ret=$(ps -ef |grep mysqld | awk '{print $2}') echo $ret } if [ $# = 1 ]; then $1; else server; fi