作为一个oracle dba 出身,转mysql ;感觉好像是贵族子弟落魄到民间,从此以后每天的油盐酱醋米都要开始打算起来,很不适应啊!
但我坚信mysql 被 oracle 接管后以后的日志会越来越好;但是我还是要先吐槽下
槽点很多,慢慢来补充,先占坑。。。。
Mysql 使用上的痛点:
客户端连接无法与mysql server 直接隔离;
在my.cfg 中配置skip-network 参数:在网络上不允许tcp/ip连接,所有到数据库的连接必须进由命名管道(named pipes)共享内存(shared memory)或unix 套接字(socket)文件进行。当系统需要临时维护时,又不想让应用连上来。可以临时使用这个参数来禁止远程客户端连接mysql 数据库。
或者通过 iptables 来关闭3306 端口:
###########################################
启动iptables
service iptablesstart
iptables --list
//*查看iptables规则集*//
下面是没有定义规划时iptables的样子:
Chain INPUT (policyACCEPT)
target prot opt source destination
Chain FORWARD (policyACCEPT)
target prot opt source destination
Chain OUTPUT (policyACCEPT)
target prot opt source destination
如何开启/关闭指定端口
开启3306端口:
iptables -I INPUT -ptcp --dport 1521 -j ACCEPT
iptables -I OUTPUT -p tcp --sport 1521 -j ACCEPT
关闭3306端口:
iptables -IINPUT -p tcp --dport 3306 -j DROP
iptables -I OUTPUT -ptcp --sport 3306 -j DROP
然后保存
/etc/rc.d/init.d/iptablessave
你可以使用lsof命令来查看某一端口是否开放.查看端口可以这样来使用.
我就以81端口为例:
lsof -i:81
如果有显示说明已经开放了.如果没有显示说明没有开放
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
用户密码的修改: ./bin/mysqld_safe --skip-grant-tables --user=lixora &
Mysql 服务启动时跳过权限表认证,可修改mysql 密码
这个很不安全啊!(虽然也有oracle 的操作系统认证登入,但也不是很安全,稍微改下 sqlnet.ora 就可以使用操作系统认证登入)
Innodb 存储引擎表空间管理:
Innodb_data_file_path = /home/ibdata1:2000M;/home1/ibdata2:2000M:autoextend;
参数重启数据库生效,这个管理模式简直是要逼疯oracledba啊!!!!!!!
---------未完待续,我要吐槽