1.修改yum源 vim /etc/yum.repos.d/mysql.repo [Mysql] name = Mysql baseurl = http://mirrors.cloud.tencent.com/mysql/yum/mysql80-community-el7/ gpgcheck = 0 enable = 1 2.刷新一下 yum clean all yum makecache 3.安装 yum install mysql-community-server 4.初始化[如果要忽略表名大小写,这步最关键一定要在数据库启动前执行] /usr/sbin/mysqld --initialize --user=mysql --lower-case-table-names=1 5.修改配置文件 vi /etc/my.cnf [client] default-character-set = utf8mb4 [mysql] default-character-set = utf8mb4 [mysqld] #数据目录在这里修改 datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock lower_case_table_names = 1 log-error=/var/log/mysqld.log pid-file=/var/run/mysqld/mysqld.pid port=3306 max_connections = 2000 mysqlx_max_connections=2000 lower_case_table_names = 1 wait_timeout=120 interactive_timeout=120 character-set-server = utf8mb4 collation-server = utf8mb4_0900_ai_ci 6.启动 systemctl start mysqld.service 7.查看密码 grep 'temporary password' /var/log/mysqld.log 8.登录[用上一步查到的密码] mysql -uroot -p 9.修改密码 开启远程连接 配置方式 ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码'; use mysql; update user set host = '%' where user = 'root'; #任意ip都可以连 update user set host = '192.168.122.%' where user = 'root'; #指定ip段可以连 update user set host='your ip' where user='root'; //指定ip flush privileges;问题现象
Different lower_case_table_names settings for server ('0') and data dictionary ('1')
MySQL_8.0无法启动,查看对应的.err报错日志,可以看到以下报错信息。
Different lower_case_table_names settings for server ('0') and data dictionary ('1').
问题原因
MySQL8.0新增data dictionary的概念,数据初始化的时候在Linux下默认使用lower-case-table-names=0参数,数据库启动的时候读取my.cnf文件中的值。若二者值不一致则在MySQL的错误日志中记录报错信息。
解决方法
在MySQL的my.cnf配置文件中[mysqld]项下添加以下内容。
lower_case_table_names = 1