mysql-5.5.56版本(二进制包安装)-自定义安装路径
mysql-5.5.56版本(二进制包安装)-自定义安装路径
安装路径:/application/mysql-5.5.56
1.前期准备
mysql依赖
libaio
yum install -y libaio
创建用户mysql,以该用户的身份执行mysql
useradd -s /bin/false -m mysql
下载mysql二进制包并解压
cd /tools
wget https://dev.mysql.com/get/downloads/mysql-5.5/mysql-5.5.56-linux-glibc2.5-x86_64.tar.gz
tar -zxf mysql-5.5.56-linux-glibc2.5-x86_64.tar.gz -c /application/
切换到/application目录,将mysql文件夹名改短,给mysql目录做一个软链接
cd /application/
mv mysql-5.5.56-linux-glibc2.5-x86_64/ mysql-5.5.56
ln -s mysql-5.5.56/ mysql
递归设置mysql目录的所属组和所属用户
chown -r mysql:mysql mysql-5.5.56/
2.mysql目录内操作
cd mysql
初始化
会在mysql目录内生成一个data目录,存放数据库的目录
./scripts/mysql_install_db --basedir=/application/mysql --datadir=/application/mysql/data/ --user=mysql
更改所属用户和组
chown -r root .
chown -r mysql data
除了mysql目录下的data目录所属用户不变,其他所有文件的所属用户改为root
拷贝配置文件
cp support-files/my-medium.cnf /etc/my.cnf
将mysql的配置文件拷贝为/etc/目录下的my.cnf
修改配置文件
sed -i 28i'log-error=/application/mysql/data/mysqld.error' /etc/my.cnf
在配置文件插入了一行,进行配置错误日志
/etc/my.cnf content:
# example mysql config file for medium systems.
#
# this is for a system with little memory (32m - 64m) where mysql plays
# an important part, or systems up to 128m where mysql is used together with
# other programs (such as a web server)
#
# mysql programs look for option files in a set of
# locations which depend on the deployment platform.
# you can copy this option file to one of those
# locations. for information about these locations, see:
# https://dev.mysql.com/doc/mysql/en/option-files.html
#
# in this file, you can use all long options that a program supports.
# if you want to know which options a program supports, run the program
# with the "--help" option.
# the following options will be passed to all mysql clients
[client]
#password = your_password
port = 3306
socket = /tmp/mysql.sock
# here follows entries for some specific programs
# the mysql server
[mysqld]
port = 3306
log-error=/application/mysql/data/mysqld.error
socket = /tmp/mysql.sock
skip-external-locking
key_buffer_size = 16m
max_allowed_packet = 1m
table_open_cache = 64
sort_buffer_size = 512k
net_buffer_length = 8k
read_buffer_size = 256k
read_rnd_buffer_size = 512k
myisam_sort_buffer_size = 8m
# don't listen on a tcp/ip port at all. this can be a security enhancement,
# if all processes that need to connect to mysqld run on the same host.
# all interaction with mysqld must be made via unix sockets or named pipes.
# note that using this option without enabling named pipes on windows
# (via the "enable-named-pipe" option) will render mysqld useless!
#
#skip-networking
# replication master server (default)
# binary logging is required for replication
log-bin=mysql-bin
# binary logging format - mixed recommended
binlog_format=mixed
# required unique id between 1 and 2^32 - 1
# defaults to 1 if master-host is not set
# but will not function as a master if omitted
server-id = 1
# replication slave (comment out master section to use this)
#
# to configure this host as a replication slave, you can choose between
# two methods :
#
# 1) use the change master to command (fully described in our manual) -
# the syntax is:
#
# change master to master_host=, master_port=,
# master_user=, master_password= ;
#
# where you replace , , by quoted strings and
# by the master's port number (3306 by default).
#
# example:
#
# change master to master_host='125.564.12.1', master_port=3306,
# master_user='joe', master_password='secret';
#
# or
#
# 2) set the variables below. however, in case you choose this method, then
# start replication for the first time (even unsuccessfully, for example
# if you mistyped the password in master-password and the slave fails to
# connect), the slave will create a master.info file, and any later
# change in this file to the variables' values below will be ignored and
# overridden by the content of the master.info file, unless you shutdown
# the slave server, delete master.info and restart the slaver server.
# for that reason, you may want to leave the lines below untouched
# (commented) and instead use change master to (see above)
#
# required unique id between 2 and 2^32 - 1
# (and different from the master)
# defaults to 2 if master-host is set
# but will not function as a slave if omitted
#server-id = 2
#
# the replication master for this slave - required
#master-host =
#
# the username the slave will use for authentication when connecting
# to the master - required
#master-user =
#
# the password the slave will authenticate with when connecting to
# the master - required
#master-password =
#
# the port the master is listening on.
# optional - defaults to 3306
#master-port =
#
# binary logging - not required for slaves, but recommended
#log-bin=mysql-bin
# uncomment the following if you are using innodb tables
#innodb_data_home_dir = /usr/local/mysql/data
#innodb_data_file_path = ibdata1:10m:autoextend
#innodb_log_group_home_dir = /usr/local/mysql/data
# you can set .._buffer_pool_size up to 50 - 80 %
# of ram but beware of setting memory usage too high
#innodb_buffer_pool_size = 16m
#innodb_additional_mem_pool_size = 2m
# set .._log_file_size to 25 % of buffer pool size
#innodb_log_file_size = 5m
#innodb_log_buffer_size = 8m
#innodb_flush_log_at_trx_commit = 1
#innodb_lock_wait_timeout = 50
[mysqldump]
quick
max_allowed_packet = 16m
[mysql]
no-auto-rehash
# remove the next comment character if you are not familiar with sql
#safe-updates
[myisamchk]
key_buffer_size = 20m
sort_buffer_size = 20m
read_buffer = 2m
write_buffer = 2m
[mysqlhotcopy]
interactive-timeout
拷贝启动程序
cp support-files/mysql.server /etc/init.d/mysql
将mysql的启动程序拷贝到/etc/init.d/目录下,以便启动程序
编辑启动文件,配置启动目录
方法一:
思路是给配置文件提供的变量进行赋值。较麻烦。
sed -i ':a;n;$!ba;s/basedir=\ndatadir=/basedir=\/application\/mysql\ndatadir=\/application\/mysql\/data/g' /etc/init.d/mysql
sed -i ':a;n;$!ba;s/mysqld_pid_file_path=\n/mysqld_pid_file_path=\/application\/mysql\/data\/mysqld.pid\n/g' /etc/init.d/mysql
等价于将45、46两行
basedir=
datadir=
mysqld_pid_file_path=
替换成
basedir=/application/mysql
datadir=/application/mysql/data
mysqld_pid_file_path=/application/mysql/data/mysql.pid
方法二(推荐):
思路是将脚本的默认地址(/usr/local/mysql)直接替换成自定义路径(/application/mysql),便不用给变量赋值
sed -i 's#/usr/local/mysql#/application/mysql#g' /etc/init.d/mysql
到这里mysql安装完成可以正常启动
3.后期结尾
命令创建软链接
将mysql命令创建软链接到环境变量的目录,使用户可以在变量找到相应的命令
ln -s /application/mysql/bin/* /usr/local/sbin
设置与修改密码
第一次设置密码:
mysqladmin -u'' password ''
例子:
mysqladmin -u'root' password 'password'
往后修改密码:
mysqladmin -u'' -p'' password ''
例子:
mysqladmin -u'root' -p'password' password 'newpassword'
登录mysql
$ mysql -u'root' -p'password'
welcome to the mysql monitor. commands end with ; or \g.
...
mysql> #成功登陆到mysql控制台
$ mysql -uroot -ppassword
welcome to the mysql monitor. commands end with ; or \g.
...
mysql> #成功登陆到mysql控制台
$ mysql -u'root' -p
enter password: #这里输入用户的密码
welcome to the mysql monitor. commands end with ; or \g.
...
mysql> #成功登陆到mysql控制台
$ mysql -uroot -p
enter password: #这里输入用户的密码
welcome to the mysql monitor. commands end with ; or \g.
...
mysql> #成功登陆到mysql控制台
键入quit或ctrl + d退出mysql环境
mysql> quit
bye
[root@www mysql]#
or
mysql> ^dbye
[root@www mysql]#
4.常用命令
进入mysql
mysql -u'root' -p'password'
mysql -uroot -ppassword
mysql -u'root' -p
mysql -uroot -p
启动mysql
service mysql start
停止mysql
service mysql stop
重启mysql
service mysql restart
推荐阅读
-
Mysql 5.5.56版本(二进制包安装)自定义安装路径步骤记录
-
mysql 开发进阶篇系列30 数据库二进制包(安装指定路径,目录介绍)
-
mysql-5.5.56版本(二进制包安装)-自定义安装路径
-
mysql-5.7.18版本(二进制包安装)-自定义安装路径
-
Mysql 5.5.56版本(二进制包安装)自定义安装路径步骤记录
-
mysql 开发进阶篇系列30 数据库二进制包(安装指定路径,目录介绍)
-
Mysql5.7.18版本(二进制包安装)自定义安装路径教程详解
-
mysql-5.5.56版本(二进制包安装)-自定义安装路径
-
MySQL 5.5/5.6/5.7及以上版本安装包安装时如何选择安装路径_MySQL
-
mysql-5.7.18版本(二进制包安装)-自定义安装路径