赞
踩
# 更新 apt-get 工具
sudo apt-get update
# 自动下载安装 mysql,默认安装最新版
sudo apt-get install mysql-server
默认是自动启动的,此时可以使用 mysql 进入,不需要密码
lower_case_table_names 值为 0 视为敏感,值为 1 视为不敏感
- window 默认为忽略
- linux 默认为大小写敏感
使用 apt-get 安装有优点也有缺点
- 优点是:使用上面方法的有点是一步到位,方便
- 缺点是:会自动启动mysql(对于mysql8来说是缺点)
对于mysql8,忽略大小写的配置,需要在初始化前修改配置文件,如果要对已经启动过,产生了数据文件的mysql8服务,做忽略大小写配置变更,会多如下几个步骤
# mysql8 以下
sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf
在[mysqld]下添加
lower_case_table_names=1
# mysql8 及以上,需要在初始化数据库时 添加
# 注意mysql8的服务名时mysql而MySQL7的服务名是mysqld
sudo mysqld --initialize --user=mysql --lower-case-table-names=1
# 1.停掉 mysql 服务 service mysql stop # 2.删除 /var/lib/mysql (建议重要数据,提前备份) rm -rf /var/lib/mysql # 3.新建 /var/lib/mysql mkdir /var/lib/mysql # 4.授权 sudo chown -R mysql:mysql /var/lib/mysql # 5.配置文件 [mysqld] 组下中添加 lower-case-table-names=1 sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf # 6.初始化 lower-case-table-names=1 sudo /usr/sbin/mysqld --initialize --user=root --lower-case-table-names=1 # 7.启动服务, service mysql start # 8.经过初始化后会重置密码,给一个随机的密码 grep "A temporary password" /var/log/mysql/error.log # 9.登录mysql后,查看忽略大小写是否成功 mysql> show variables like 'lower%';
# 进入mysql 服务设置
sudo mysql
mysql> use mysql;
mysql> update user set plugin='mysql_native_password' where User='root';
# mysql8
#使用mysql_native_password修改加密规则
mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '密码';
# 设置密码后进入mysql需要使用账号密码了,之前是有默认账号,没有密码的,可以直接使用 mysql 进入
sudo mysql -uroot -p123456
在Ubuntu下MySQL缺省是只允许本地访问的,不能直接使用远程工具连接;
#找到 bind-address 修改值为 0.0.0.0 sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf #重启mysql sudo /etc/init.d/mysql restart #切换数据库 mysql> use mysql; #查询用户表命令: mysql> select user,authentication_string,host from user; #查看状态 mysql> select host,user,plugin from user; #允许远程访问 mysql> update user set host = '%' WHERE user = 'root'; #刷新cache中配置 刷新权限 mysql> flush privileges;
# 检查服务状态
systemctl status mysql.service
文章优先发布在gitee Wyrande/blog - Gitee.com
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。