自定义mysql-5.5.56版的安装路径讲义

本文主要给大家介绍自定义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-5.5.56版的安装路径讲义

递归设置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:
# http://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
[root@www mysql]# mysql -u'root' -p'PassWord'
Welcome to the MySQL monitor.  Commands end with ; or \g.
...
mysql>  #成功登陆到mysql控制台
 
 
[root@www mysql]# mysql -uroot -pPassWord
Welcome to the MySQL monitor.  Commands end with ; or \g.
...
mysql>  #成功登陆到mysql控制台
 
 
[root@www mysql]# mysql -u'root' -p
Enter password:  #这里输入用户的密码
Welcome to the MySQL monitor.  Commands end with ; or \g.
...
mysql>  #成功登陆到mysql控制台
 
 
[root@www 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版的安装路径讲义,希望能给大家在实际运用中带来一定的帮助。本文由于篇幅有限,难免会有不足和需要补充的地方,如有需要更加专业的解答,可在官网联系我们的24小时售前售后,随时帮您解答问题的。


文章题目:自定义mysql-5.5.56版的安装路径讲义
分享路径:http://myzitong.com/article/gjcpgp.html