SuSE11安装MySQL5.6.40:编译安装方式、单实例
发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,摘要:SuSE11sp3 64位操作系统、 MySQL5.6.40 编译安装、单实例注:kingtry是我的主机名一、环境准备操作系统:SuSE版本11sp3,64位kingtry:~ # uname
千家信息网最后更新 2026年11月01日SuSE11安装MySQL5.6.40:编译安装方式、单实例
摘要:SuSE11sp3 64位操作系统、 MySQL5.6.40 编译安装、单实例
注:kingtry是我的主机名
一、环境准备
操作系统:SuSE版本11sp3,64位
kingtry:~ # uname -aLinux kingtry 3.0.76-0.11-default #1 SMP Fri Jun 14 08:21:43 UTC 2013 (ccab990) x86_64 x86_64 x86_64 GNU/Linuxkingtry:~ # cat /etc/SuSE-release SUSE Linux Enterprise Server 11 (x86_64)VERSION = 11PATCHLEVEL = 3
二、依赖包
tack-5.6-90.55.x86_64.rpm ncurses-devel-5.6-90.55.x86_64.rpmbison-2.3-127.112.x86_64.rpm
三、编译安装cmake-2.8.4.tar.gz
kingtry:~ # tar -xf cmake-2.8.4.tar.gzkingtry:~ # cd cmake-2.8.4/kingtry:~/cmake-2.8.4 # ./configurekingtry:~/cmake-2.8.4 # make && make install
四、软件准备
mysql-5.6.40.tar.gz
五、安装过程
1、创建群组及用户
kingtry:~ # groupadd mysqlkingtry:~ # useradd -g mysql mysql
2、创建相关目录
kingtry:~ # mkdir -p /data/mysql/{data,tmp} #创建存放数据文件目录,data与tmp之间不能为空格kingtry:~ # chown -R mysql.mysql /data/mysql3、解压文件,并修改解压后的文件夹的名称
kingtry:~ # tar -xf mysql-5.6.40.tar.gz
4、编译安装
kingtry:~ # cd mysql-5.6.40/kingtry:~/mysql-5.6.40 # cmake . -DCMAKE_INSTALL_PREFIX=/root/mysql \ -DSYSCONFDIR=/data/mysql \ -DMYSQL_DATADIR=/data/mysql/data \ -DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock \ -DMYSQL_TCP_PORT=3306 \ -DWITH_ARCHIVE_STORAGE_ENGINE=1 \ -DWITH_BLACKHOLE_STORAGE_ENGINE=1 \ -DWITH_PARTITION_STORAGE_ENGINE=1 \ -DENABLED_LOCAL_INFILE=1 \ -DDEFAULT_CHARSET=utf8 \ -DDEFAULT_COLLATION=utf8_general_ci \ -DEXTRA_CHARSETS=allkingtry:~/mysql-5.6.40 # make && make install
六、初始化数据库
注:此处不能使用安装文件下的同名文件(不能使用/root/mysql-5.6.40/scripts/mysql_install_db)
kingtry:~ # /root/mysql/scripts/mysql_install_db --basedir=/root/mysql --datadir=/data/mysql/data --user=mysql
七、创建配置文件/data/mysql/my.cnf
my.cnf内容参考如下:
# For advice on how to change settings please see# http://dev.mysql.com/doc/refman/5.7/en/server-configuration-defaults.html [client]#password = your_passwordport = 3306socket = /data/mysql/mysql.sockdefault-character-set=utf8# Here follows entries for some specific programs# The MySQL server[mysqld]port = 3306basedir = /root/mysqldatadir = /data/mysql/datatmpdir = /data/mysql/tmpsocket = /data/mysql/mysql.sockcharacter-set-server = utf8collation-server = utf8_general_cipid-file = /data/mysql/mysql.piduser = mysql explicit_defaults_for_timestamplower_case_table_names = 1max_connections = 1000back_log = 1024open_files_limit = 10240table_open_cache = 5120 #bind-address = 127.0.0.1 #skip-name-resolveskip-external-lockinglocal-infile = 1 key_buffer_size = 32Mmax_allowed_packet = 1Mtable_open_cache = 64sort_buffer_size = 512Knet_buffer_length = 8Kread_buffer_size = 256Kread_rnd_buffer_size = 512Kmyisam_sort_buffer_size = 8M # Don't listen on a TCP/IP port at all. This can be a security enhancement,# if all processes that need to connect to mysqld run on the same host.# All interaction with mysqld must be made via Unix sockets or named pipes.# Note that using this option without enabling named pipes on Windows# (via the "enable-named-pipe" option) will render mysqld useless!# #skip-networking # Replication Master Server (default)# binary logging is required for replicationlog-bin = /data/mysql/mysql-bin # binary logging format - mixed recommendedbinlog_format = mixed # required unique id between 1 and 2^32 - 1# defaults to 1 if master-host is not set# but will not function as a master if omittedserver-id = 1 # Replication Slave (comment out master section to use this)## To configure this host as a replication slave, you can choose between# two methods :## 1) Use the CHANGE MASTER TO command (fully described in our manual) -# the syntax is:## CHANGE MASTER TO MASTER_HOST=, MASTER_PORT= ,# MASTER_USER= , MASTER_PASSWORD= ;## where you replace , , by quoted strings and# by the master's port number (3306 by default).## Example:## CHANGE MASTER TO MASTER_HOST='125.564.12.1', MASTER_PORT=3306,# MASTER_USER='joe', MASTER_PASSWORD='secret';## OR## 2) Set the variables below. However, in case you choose this method, then# start replication for the first time (even unsuccessfully, for example# if you mistyped the password in master-password and the slave fails to# connect), the slave will create a master.info file, and any later# change in this file to the variables' values below will be ignored and# overridden by the content of the master.info file, unless you shutdown# the slave server, delete master.info and restart the slaver server.# For that reason, you may want to leave the lines below untouched# (commented) and instead use CHANGE MASTER TO (see above)## required unique id between 2 and 2^32 - 1# (and different from the master)# defaults to 2 if master-host is set# but will not function as a slave if omitted#server-id = 2## The replication master for this slave - required#master-host = ## The username the slave will use for authentication when connecting# to the master - required#master-user = ## The password the slave will authenticate with when connecting to# the master - required#master-password = ## The port the master is listening on.# optional - defaults to 3306#master-port = ## binary logging - not required for slaves, but recommended#log-bin=mysql-bin # Uncomment the following if you are using InnoDB tables#innodb_data_home_dir = /var/lib/mysqlinnodb_data_file_path = ibdata1:10M:autoextend#innodb_log_group_home_dir = /var/lib/mysql# You can set .._buffer_pool_size up to 50 - 80 %# of RAM but beware of setting memory usage too highinnodb_buffer_pool_size = 256M#innodb_additional_mem_pool_size = 2M# Set .._log_file_size to 25 % of buffer pool size#innodb_log_file_size = 5M#innodb_log_buffer_size = 8M#innodb_flush_log_at_trx_commit = 1#innodb_lock_wait_timeout = 50innodb_buffer_pool_instances = 2innodb_read_io_threads = 8innodb_write_io_threads = 8innodb_purge_threads = 1 slow_query_log = 1long_query_time = 10log-queries-not-using-indexes log-error = /data/mysql/mysql.err expire-logs-days = 10 [mysqldump]quickmax_allowed_packet = 512Mnet_buffer_length = 16384 [mysql]auto-rehash# Remove the next comment character if you are not familiar with SQL#safe-updates [myisamchk]key_buffer_size = 20Msort_buffer_size = 20Mread_buffer = 2Mwrite_buffer = 2M [mysqlhotcopy]interactive-timeout
八、配置环境变量
kingtry:~ # echo 'export PATH=/root/mysql/bin:$PATH' >> /etc/profilekingtry:~ # source /etc/profile
九、启动MySQL服务
kingtry:~ # touch /data/mysql/mysql.err #当前版本该文件不会自动创建,需要手工创建kingtry:~ # chown mysql.mysql /data/mysql/mysql.errkingtry:~ # mysqld_safe --defaults-file=/data/mysql/my.cnf --user=mysql &
十、安装后配置之root密码修改
默认情况下root密码为空,这在生产环境下肯定不行的。修改root密码的方式有以下两种,随便哪个都行:
1、命令方式(注:首次修改密码,修改前密码为空)
kingtry:~ # mysqladmin -u root password 'root123'
要注意如果执行以上步骤之后root密码已经不为空,如果此时想再次修改root密码,上面命令就不行了,需要用到下面的命令:
kingtry:~ # mysqladmin -u root -p password 'root1234' Enter password:
这是交互式方式修改,输入的当前密码,password参数后面跟随的是想要修改成的密码
十一、客户端连接MySQL服务
kingtry:~ # mysql -uroot -p
十二、防火墙允许3306端口
kingtry:~ # vi /etc/sysconfig/SuSEfirewall2
在FW_SERVICES_EXT_TCP增加3306端口,如果存在其他端口,则空格隔开,如:
FW_SERVICES_EXT_TCP="21 22 3306"
重启防火墙:
kingtry:~ # rcSuSEfirewall2 restart
十三、设置远程访问
先登陆mysql服务器,授权root用户可以远程登陆
mysql> grant all PRIVILEGES on *.* to root@'%' identified by 'root123'; Query OK, 0 rows affected (0.00 sec)mysql> flush privileges;Query OK, 0 rows affected (0.00 sec)mysql>
注:生产环境最好只允许root在特定IP的机器上才能远程访问。
密码
文件
环境
方式
编译
命令
端口
服务
配置
不行
操作系统
数据
版本
用户
目录
空格
系统
防火墙
准备
生产
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
中智农互联网科技
互联网加科技
新华互联网科技学院
互联网科技的发展
北京互联网科技公司
互联网科技股票
朗涯互联网科技
友谊互联网络科技
苏州大垚互联网科技
上海万想互联网科技
撒么互联网科技公司
上海亿帐通互联网科技
中国互联网金融科技基金
崇明区互联网教育科技售后服务
未来五年的互联网科技
佛山市翊博互联网络科技有限公司
特约风豹互联网科技为什么扣费
启辰互联网科技
互联网高科技行业有哪些企业
科技互联网公司两年变化
广州大一互联网络科技有限公司
金融科技与互联网金融
卓越科技(互联网 )
电子科技大学互联网
互联网科技网站
重庆科技学院互联网
海南科技产业互联网平台
成都玖崟互联网科技有限公司乐商圈怎么样
武汉健翔互联网络科技有限公司
2021互联网科技公司排名