目录
0、前言
1、下载解压
(1)下载解压软件
(2)然后解压软件
2、编译安装5.6.42
(1)创建启动mysql的用户和用户组
(2)安装依赖
(3)编译安装mysql
3、创建必要的目录并复制配置文件
(1)将配置文件复制到设定的目录
(2)创建必要目录
(3)初始化数据库
(4)修改 MySQL 配置文件
4、设置开机启动并加入服务
0、前言
编译安装是非常麻烦的一件事情,但是是一个运维必须要会的技能。编译安装虽然麻烦,但是在后期维护的时候,因为所以的文件都知道所在位置,所以维护会非常方便,尤其是当一个服务器上装很多软件的时候。
软件 版本
linux centos7.5
mysql 5.6.42
1、下载解压
(1)下载解压软件
直接使用wget下载或者从官网去下载,都可以
我将软件现在到了/usr/local/src
wget https://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.41.tar.gz
(2)然后解压软件
tar -zxvf mysql-5.6.41.tar.gz
2、编译安装5.6.42
(1)创建启动mysql的用户和用户组
groupadd mysql
useradd -r -g mysql mysql -s /sbin/nologin
(2)安装依赖
yum -y install gcc gcc-c++ gcc-g77 autoconf automake zlib* fiex* libxml* ncurses-devel libmcrypt* libtool-ltdl-devel* make cmake openssl openssl-devel bison-devel
(3)编译安装mysql
cd mysql-5.6.41
编译
cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITH_FEDERATED_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DENABLED_LOCAL_INFILE=1 \
-DMYSQL_USER=mysql \
-DMYSQL_TCP_PORT=3308 \
-DSYSCONFDIR=/etc \
-DEXTRA_CHARSETS=all \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_SSL=system \
-DINSTALL_SHAREDIR=share \
-DDOWNLOAD_BOOST=1 -DWITH_BOOST=/data/install_file/boost_1_59_0 \
安装
make && make install
3、创建必要的目录并复制配置文件
cd /usr/local/mysql
(1)将配置文件复制到设定的目录
cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf
(2)创建必要目录
mkdir -p data
mkdir -p logs
touch logs/error.log
chown -R mysql:mysql /data/mysql
(3)初始化数据库
./scripts/mysql_install_db --user=mysql --datadir=/usr/local/mysql/data/
(4)修改 MySQL 配置文件
这个配置文件根据自己的意图修改。
4、设置开机启动并加入服务
cp support-files/mysql.server /etc/init.d/mysqld
chmod +x /etc/init.d/mysqld
chkconfig --add mysqld
chkconfig mysqld on
#注意要对etc/my.cof 下这几项进行配置
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
port = 3306
# server_id = .....
socket = /tmp/mysql.sock
#启动服务
service mysqld start
# 设置 ROOT 密码
./bin/mysqladmin -u root password 123456
10、做个软链接,将安装目录下的mysql 放在/usr/bin 目录下
[root@localhost local]# ln -s /usr/local/mysql/bin/mysql /usr/bin
11、登录msyql,输入密码(密码为步骤7初始化生成的密码)
[root@localhost local]# mysql -u root -p
Enter password:
12、修改密码并开放远程
msql>alter user 'root'@'localhost' identified by '123456';
mysql>use mysql;
msyql>update user set user.Host='%' where user.User='root';
mysql>flush privileges;
mysql>quit
---------------------
作者:没有适合的昵称
来源:CSDN
原文:https://blog.csdn.net/nowzhangjunzhe/article/details/83687521
版权声明:本文为博主原创文章,转载请附上博文链接!
MySQL 1130 - Host 127.0.0.1 is not allowed to connect to this MySQL server
在开发中为了让开发更方便,在本地配置环境,希望可以直接访问服务器上的MySQL数据库,更方便的管理数据库,
需要在本地远程连接linux服务器的本地数据库,直接用数据库管理工具连接出现如下报错1130 - Host 127.0.0.1 is not allowed to connect to this MySQL server:
这个错误说明MySQL没有允许远程登录,只要授权可以远程登录就ok了。
登录到服务器上,mysql -u root -p 回车,password:(输入你的密码),进入到mysql之后输入命令:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'yourpassword' WITH GRANT OPTION; /*把命令中的‘yourpassword’换成你的数据库密码*/
修改以后再键入刷新使用权限命令:
FLUSH PRIVILEGES
这里不输入刷新权限命令的话也可以重启mysqld,命令:
service mysqld restart
完成后使用数据库管理工具连接服务器一切正常!