自学内容网 自学内容网

安装mysql 5.5.62

1>先检查是否存在其他版本mysql

rpm -qa|grep -i  mariadb

存在则卸载

yum -y remove maria*

2>下载mysql 5.5.62

        wget https://cdn.mysql.com/archives/mysql-5.5/mysql-5.5.62-linux-glibc2.12-x86_64.tar.gz

3>确认系统是否安装libaio库

        yum -y install libaio*

4>创建用户组和用户

groupadd mysql

useradd -r -g mysql mysql

5>创建mysql环境

    #解压  

        tar -zxvf mysql-5.5.62-linux-glibc2.12-x86_64.tar.gz

    #移动mysql到usr/local文件下

mv mysql-5.5.62-linux-glibc2.12-x86_64 /usr/local/

    #建立软连接

cd /usr/local/

ln -s mysql-5.5.62-linux-glibc2.12-x86_64  mysql

    #设定mysql文件夹的用户和用户组

cd mysql

chown -R mysql:mysql .

6>初始化mysql数据库

        cd /usr/local/mysql/

        scripts/mysql_install_db --user=mysql

        //scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

#注意:

# 一定要先进入/usr/local/mysql/目录

# 一定是执行scripts/mysql_install_db --user=mysql语句其他的任何语句都不可以(在语句前面加上./执行也不行的)

默认安装的mysql数据文件在 /usr/local/mysql/data文件夹中. 在生产环境中数据文件在另外的一个磁盘上,这就需要安装时指定数据文件存放路径. 安装命令如下:

 #/mnt/mysqldata是mysql数据文件位置

 scripts/mysql_install_db --user=mysql --ldata=/mnt/mysqldata

执行到 第8步时 ./bin/mysqld_safe &命令是无法启动mysql的在第9步中有解决的办法

7>重新设置mysql文件夹的用户组和用户

#在mysql目录下面

chown -R root .

chown -R mysql data

8> 测试mysql是否安装成功

#在mysql文件夹下启动mysql

./bin/mysqld_safe &  #启动mysql

#检查mysql的端口是否启动

netstat -anp | grep 3306

#登录mysql

./bin/mysql -uroot

#在mysql的控制台上输入

mysql> show databases;

#注意

    如果安装指定了数据文件存放位置在执行./bin/mysqld_safe & mysql无法启动起来. 在第9步中有解决办法

9> 设定配置文件

#如果/etc下没有mysql文件请创建

mkdir/etc/mysql

#在mysql目录下复制配置文件到/etc/mysql下

cp support-files/my-medium.cnf /etc/mysql/my.cnf

注: 也可以复制到/etc下

cp support-files/my-medium.cnf /etc/my.cnf

如果不敢确定放在那个文件夹下修改my.cnf文件中port项,然后启动mysql查看一下端口

在support-files文件夹下有几个文件:

my-small.cnf

my-medium.cnf

my-large.cnf

my-huge.cnf

my-innodb-heavy-4G.cnf

这个几个文件都可以复制到/etc/mysql/my.cnf中, 这是mysql官方针对不同的应用作的优化.

my-small.cnf 是小型系统内存小于64M(This is for a system with little memory (<= 64M) where MySQL is only used)

my-medium.cnf 是一个中型系统内存32M - 64M(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))

  my-large.cnf是一个大型系统内存是512M(This is for a large system with memory = 512M where the system runs mainly MySQL.)

my-huge.cnf 是一个巨大的系统内存在1G-2G(This is for a large system with memory of 1G-2G where the system runs mainly  MySQL.)

my-innodb-heavy-4G.cnf是针对只使用系统有4G内存只使用innodb引擎做的特殊优化(This is a MySQL example config file for systems with 4GB of memory running mostly MySQL using InnoDB only tables and performing complex queries with few connections.)

更多介绍请阅读原始配置文件文件.

开发环境下和底并发下可以使用my-medium.cnf文件.  在高并发的系统中可以使用my-huge.cnf. 针对不一样环境使用不一样的配置文件

http://www.jb51.net/article/87160.htm?pc

如果在第6步中指定了mysql的数据文件安装位置, 在这一步需要修改my.cnf. 找到[mysqld]项添加如下内容

           datadir  = /mnt/mysqldata

现在可以执行 ./bin/mysqld_safe & 命令完成第8步的操作

10> 设置启动文件

cp -f /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql

检查一下/etc/init.d/mysql是否是root用户组和root用户可以执行

ll/etc/init.d/mysql

//加入系统启动(第一种方法,建议使用)

 systemctl enable mysql

//加入系统启动(第二种方法)

使用runlevel查看linux系统启动的级别, 进入对应的rcX.d的文件夹中建立开机启动项和关闭项

runlevel  #显示2

cd/etc/rc2.d

ln -s /etc/init.d/mysql /etc/rc2.d/S90mysql #开机启动mysql

ln -s /etc/init.d/mysql /etc/rc0.d/K90mysql #关机停止mysql

ln -s /etc/init.d/mysql /etc/rc6.d/K90mysql #重启停止mysql

10> 设定mysql密码

cd/usr/local/mysql/bin

 ./mysqladmin -u root password $(yourpass)

    #这里密码设置为root123

11> 启用远程登录

修改/etc/my.conf :

找到:bind-address = 127.0.0.1

修改成

bind-address = 0.0.0.0

或者直接把bind-address这一行注释掉

登录mysql执行:  允许其他机器可以访问

GRANT ALL ON *.* TO 'root'@'%' IDENTIFIED BY 'root123' WITH GRANT OPTION;

12.开放3306端口

    两种方式

    a.清除所有防火墙规则 

            iptables -F  

    b.启动防火墙,开放3306端口

        #查看防火墙状态

            firewall-cmd --state

        #如果防火墙未启动,启动防火墙

            systemctl start firewalld

        #开机启动防火墙

            systemctl enable firewalld 

        #查看防火墙开放的端口       

            firewall-cmd --list-port

        #发现没有3306端口,添加3306端口

            firewall-cmd --zone=public --add-port=3306/tcp --permanent

        #重新加载防火墙

            firewall-cmd --reload

        #再次查看防火墙开放的端口       

            firewall-cmd --list-port

        #完成端口开放


原文地址:https://blog.csdn.net/ming_love/article/details/142986411

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!