安装mysql
# 服务器
sudo apt install mysql-server -y
# 客户端
sudo apt install mysql-client -y
设置密码并开启远程连接
修改mysql配置
vim /etc/mysql/mysql.conf.d/mysqld.cnf
主要配置内容
[mysqld]
# mysql 监听主机
bind-address = 0.0.0.0
# mysql X插件 监听主机(如果启用了的话)
mysqlx-bind-address = 0.0.0.0
修改mysql内部设置
超管方式运行mysql
# Ubuntu上全新安装的mysql8没有默认启用密码插件
sudo mysql
执行如下sql操作
-- 修改默认root@localhost使用密码插件并设置密码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'your password';
-- 添加root允许远程主机访问(如果有必要,务必确保安全)
CREATE USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'your password';
-- 授予远程访问全部权限
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%';
-- 刷新权限
FLUSH PRIVILEGES;
exit
安装mysql后需要修改忽略表名大小写
Windows上,MySQL默认是忽略表名大小写的;
Linux上,MySQL默认是区分表名大小写的,且MySQL初始化之后是不允许修改忽略表名大小写配置的,而MySQL安装过程会自动初始化。
如下操作参考: How to install MySQL 8.0 with lower_case_table_names=1 on Ubuntu Server 20.04 LTS successfully?
如果需要在MySQL安装后修改为忽略表名大小写,则需要删除MySQL数据,重新初始化,所以,如下操作前请备份数据;
修改mysql配置
vim /etc/mysql/mysql.conf.d/mysqld.cnf
主要配置内容
[mysqld]
lower_case_table_names = 1
清理数据(操作前务必备份数据)
# 停止服务
sudo service mysql stop
# 删除mysql数据文件夹及内部数据
sudo rm -rf /var/lib/mysql
# 重新创建mysql数据文件夹并赋予合适的权限
sudo mkdir /var/lib/mysql
sudo chown mysql:mysql /var/lib/mysql
sudo chmod 700 /var/lib/mysql
# 重新初始化mysql
sudo mysqld --defaults-file=/etc/mysql/my.cnf --initialize --lower_case_table_names=1 --user=mysql --console
# 启动服务
sudo service mysql start
# 查看mysql临时密码
sudo grep 'temporary password' /var/log/mysql/error.log
# 使用(临时密码)登录mysql
sudo mysql -u root -p
# 参考前面允许远程配置部分,修改密码
可参考的mysql语句
-- 查看用户、认证方式、主机等信息
SELECT user,authentication_string,plugin,host FROM mysql.user;
-- 是否启用了ssl
SHOW VARIABLES LIKE 'have_ssl';
-- 是否忽略大小写
SHOW VARIABLES LIKE 'lower_case_%';
评论 (0)