mysql5.7.23安装

安装包下载

cd /home/install-files

wget http://ftp.kaist.ac.kr/mysql/Downloads/MySQL-5.7/mysql-5.7.23-linux-glibc2.12-x86_64.tar.gz

 

创建配置文件

cd /etc

echo "[mysqld]

user=mysql

skip-name-resolve

#bind-address=192.168.80.168

port=3306

server_id=1

basedir=/usr/local/mysql

datadir=/home/mysql/data

#socket=/home/mysql/sock/mysql.sock

pid-file=/home/mysql/pid/mysql.pid

log-error=/home/mysql/log/mysql-error.log

 

symbolic-links=0

default-storage-engine=INNODB

character_set_server=utf8

collation-server=utf8_general_ci

transaction_isolation=REPEATABLE-READ

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

skip_ssl

default-time-zone='+8:00'

innodb_buffer_pool_instances=1

 

#加上以下参数可以避免更新不及时,SLAVE 重启后导致的主从复制出错。

#read_only = 1

#master_info_repository=TABLE

#relay_log_info_repository=TABLE

#relay_log_recovery=1 #从机禁止写

#super_read_only=1 #从机禁止写

 

[mysql]

default-character-set=utf8

port=3306

#socket=/mysql/sock/mysql.sock

" > my.cnf

 

执行安装命令:

ll

cd /usr/local/

mv mysql-5.7.23-linux-glibc2.12-x86_64/ mysql

mkdir -p /home/mysql/data

mkdir -p /home/mysql/sock

mkdir -p /home/mysql/log

mkdir -p /home/mysql/pid

groupadd mysql

useradd mysql -g mysql -d /usr/local/mysql -s /sbin/nologin

cd /usr/local/mysql

chown -R mysql:mysql /home/mysql

chown -R mysql:mysql /etc/my.cnf

chown -R mysql:mysql /usr/local/mysql

cd /usr/local/mysql/bin

./mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/home/mysql/data

service mysqld start

 

 

修改启动服务文件

cd /usr/local/mysql/support-files/

cp mysql.server /etc/init.d/mysqld

 

vim /etc/init.d/mysqld

basedir=/usr/local/mysql datadir=/mysql/data

 

配置环境变量

vim /etc/profile

末尾添加

export MYSQL_HOME=/usr/local/mysql export PATH=$MYSQL_HOME/bin:$PATH

 

source /etc/profile

 

 

本地root用户登录mysql,初始化远程登录用户

 

# ./mysql -uroot -p

Enter password:

Welcome to the MySQL monitor. Commands end with ; or \g.

Your MySQL connection id is 2

Server version: 5.7.23

 

Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.

 

Oracle is a registered trademark of Oracle Corporation and/or its

affiliates. Other names may be trademarks of their respective

owners.

 

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

 

mysql> use mysql;

ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.

mysql> set password=password('123456');

Query OK, 0 rows affected, 1 warning (0.00 sec)

 

mysql> use mysql;

Reading table information for completion of table and column names

You can turn off this feature to get a quicker startup with -A

 

Database changed

mysql> grant all privileges on *.* to idba@'%' identified by '123456';

Query OK, 0 rows affected, 1 warning (0.00 sec)

 

mysql> flush privileges;

Query OK, 0 rows affected (0.00 sec)

 

mysql> exit

 

设置mysql服务开机自启动

chkconfig --add mysqld

chkconfig mysqld on

chkconfig --list | grep mysqld

 

 

 

安装过程遇到的问题及解决方法

(1)Error: ./mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory

 

yum install libaio*

 

(2)Error: # ./mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/mysql/data

2018-08-05T03:39:51.400548Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).

2018-08-05T03:39:51.400615Z 0 [Warning] 'NO_ZERO_DATE', 'NO_ZERO_IN_DATE' and 'ERROR_FOR_DIVISION_BY_ZERO' sql modes should be used with strict mode. They will be merged with strict mode in a future release.

2018-08-05T03:39:51.400620Z 0 [Warning] 'NO_AUTO_CREATE_USER' sql mode was not set.

2018-08-05T03:39:51.402275Z 0 [ERROR] --initialize specified but the data directory has files in it. Aborting.

2018-08-05T03:39:51.402308Z 0 [ERROR] Aborting

 

1.检查:配置文件没有问题

2.检查:所有涉及文件已归属mysql用户没问题

3.检查:数据库“bind-address”没闻到

4.清空“/mysql/data”下编译的所有,即数据库文件,重新执行:

./mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/mysql/data

(3)

-bash: warning: setlocale: LC_CTYPE: cannot change locale (UTF-8): No such file or directory

 

vim /etc/environment

LC_ALL=en_US.UTF-8

LANG=en_US.UTF-8

(4)忘记Mysql的root用户密码的解决方法

 

-- 先打开一个Terminal,在 /usr/local/mysql/bin ,下执行:

 

# sudo mysqld_safe --skip-grant-tables

 

-- 再新打开一个Terminal, 打开安全模式的mysql, 连接的时候不需要密码:

 

# mysql -u root -p

# UPDATE mysql.user SET authentication_string=PASSWORD('123456') WHERE User='root';

# FLUSH PRIVILEGES;

(5)创建数据库

 

# CREATE DATABASE IF NOT EXISTS my_test DEFAULT CHARACTER SET utf8 COLLATE utf8_bin;

# GRANT ALL PRIVILEGES ON *.* TO dba@'%' IDENTIFIED BY '123456';

# FLUSH PRIVILEGES;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值