mysql8.0部署多实例并创建可以进行远程连接和操作的账号

步骤一:创建新的 MySQL 实例 my666

1. 创建数据目录和日志文件

假设mysql安装目录为/usr/local/mysql/。首先,为新的实例创建数据目录和日志文件:



sudo mkdir -p /usr/local/mysql/data666 #实例my666的数据目录
sudo mkdir -p /var/run/mysqld #所有实例放pid的目录
sudo touch /var/log/mysql666.error.log #放my666实例的错误日志
sudo touch /var/run/mysqld/mysql666.pid #放my666实例的pid文件


sudo chown -R mysql:mysql /usr/local/mysql/data666
sudo chown mysql:mysql /var/log/mysql666.error.log
sudo chown mysql:mysql /var/run/mysqld/mysql666.pid
sudo chown mysql:mysql /var/run/mysqld

sudo chmod 750 /usr/local/mysql/data666
sudo chmod 644 /var/log/mysql666.error.log
sudo chmod 644 /var/run/mysqld/mysql666.pid
sudo chmod 755 /var/run/mysqld

2. 创建新的配置文件 /etc/my666.cnf

sudo nano /etc/my666.cnf #实例my666的配置文件

将以下内容写入文件:

[mysqld]
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data666
socket=/var/lib/mysql/mysql666.sock
port=3366
log-error=/var/log/mysql666.error.log
pid-file=/var/run/mysqld/mysql666.pid
bind-address=0.0.0.0
server_id=666

3. 初始化数据目录

使用 mysqld 初始化数据目录,并且拿到root密码:

sudo /usr/local/mysql/bin/mysqld --initialize --user=mysql --datadir=/usr/local/mysql/data666 --basedir=/usr/local/mysql

4. 启动 MySQL 实例

使用新的配置文件启动 MySQL 实例:

sudo /usr/local/mysql/bin/mysqld_safe --defaults-file=/etc/my666.cnf &

步骤二:设置远程访问权限

1. 登录到新的 MySQL 实例

首先,重新开一个会话,然后登录到新的 MySQL 实例,记得root密码刚才拿到的:

mysql -u root -p --socket=/var/lib/mysql/mysql666.sock

2. 创建远程用户并授予权限

在 MySQL 提示符下执行以下命令:

ALTER USER 'root'@'localhost' IDENTIFIED BY 'your_new_password';
CREATE USER 'remote_user666'@'%' IDENTIFIED BY 'password666';
GRANT ALL PRIVILEGES ON *.* TO 'remote_user666'@'%';
FLUSH PRIVILEGES;

步骤三:配置防火墙和 SELinux(可选操作)

1. 配置防火墙

确保防火墙允许 3366 端口的连接:

sudo firewall-cmd --permanent --add-port=3366/tcp
sudo firewall-cmd --reload

2. 配置 SELinu

临时禁用 SELinux 以进行测试:

sudo setenforce 0

如果连接成功,请配置 SELinux 以允许 MySQL 连接:

sudo setsebool -P mysql_connect_any 1

步骤四:远程连接测试

从远程机器上测试连接:

systemctl start mysql
systemctl status mysql
mysql -u remote_user666 -p -h <server_ip> -P 3366

确认 MySQL 正在监听端口 3366

使用以下命令检查 MySQL 是否在监听端口 3366:

sudo netstat -tulnp | grep mysqld

检查日志文件

如果遇到问题,检查 MySQL 错误日志以获取更多信息:

sudo tail -f /var/log/mysql666.error.log

总结

通过上述步骤,应该能够成功创建并配置新的 MySQL 实例 my666,并为其设置远程访问权限。如果在执行过程中遇到任何问题,请提供详细的错误信息以便进一步诊断。

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇