声明:这是我在大学毕业后进入第一家互联网工作学习的内容
shell> groupadd mysql
shell> useradd -r -g mysql -s /bin/false mysql
shell> mkdir -vp /data/mysql/mysql3306/{data,logs,tmp}
shell> mkdir -vp /opt/mysql
shell> cd /opt/mysql/
shell> tar zxvf mysql-5.7.28-linux-glibc2.12-x86_64.tar.gz
shell> cd /usr/local
shell> ln -s /opt/mysql/mysql-5.7.28-linux-glibc2.12-x86_64 mysql
里面的参数都是在适用于本文环境准备机器配置的基础上调优后的结果,如果你想安装Mysql的机器配置与于本文环境准备机器配置相差很大请不要盲目复制,请看下面3大配置项内容里具体参数的讲解,太长不看可以直接看总结的配置文件。
[client] #客户端默认设置内容
user=root
password=123456
port = 3306
socket = /data/mysql/mysql3306/data/mysql.sock
#避免MySQL的外部锁定,减少出错几率增强稳定性。
[mysql] #代表我们使用mysql命令登录mysql数据库时的默认设置
#参数对于做运维的人来说很重要。我们登入mysql数据库后,mysql的提示符只是一个很简单内容 mysql>,没有其他任何信息。通过--prompt=name可以自定义提示信息,通过配置显示登入的主机地址,登陆用户名,当前时间,当前数据库schema等待。个人强烈要求加上登入主机名,登陆用户名,当前库这三项加入提示内容。
prompt="\u@dev-data-01 \R:\m:\s [\d]> "
#自动补全的意思,就像我们在linux命令行里输入命令的时候,使用tab键的功能是一样的
no-auto-rehash
#utf8mb4兼容utf8,且比utf8能表示更多的字符,是utf8字符集的超集。
default-character-set=utf8mb4
数据库自身配置分为4项
basic settings
log settings
replication settings
innodb settings
datadir 可以根据实际磁盘挂载的目录进行调整
socket 可以根据实际磁盘挂载的目录进行调整
secure_file_priv 可以根据实际磁盘挂载的目录进行调整
skip_name_resolve 如果你的mysql主机查询DNS很慢或是有很多客户端主机时会导致连接很慢,是因为开发的机器是不能够连接外网的,所以DNS解析是不可能完成的,这时就需要禁用
external-locking 如果是单机部署需要禁用
[mysqld] #代表数据库自身的默认设置
########basic settings########
user = mysql
port = 3306
basedir = /usr/local/mysql
datadir = /data/mysql/mysql3306/data
socket = /data/mysql/mysql3306/mysql.sock
#参数是用来限制LOAD DATA, SELECT ... OUTFILE, and LOAD_FILE()传到哪个指定目录的,不配置不能用这个命令导出文件。
secure_file_priv=/data/mysql
#该变量的值是ON或 OFF指示是否启用了性能模式。
performance_schema = 1
#服务器安装时指定的默认字符集设定。
character_set_server=utf8mb4
#操作系统允许mysqld打开的文件数量。
open_files_limit = 655350
#事务隔离级别为READ COMMITTED。
transaction_isolation = READ-COMMITTED
#针对交互式连接服务器关闭连接前等待活动的秒数,例如mysql客户端连接数据库。
interactive_timeout = 31536000
#针对非交互式连接服务器关闭连接前等待活动的秒数,例如通过jdbc连接数据库。
wait_timeout = 31536000
#客户端连接是否解析主机名。0,mysqld在检查客户端连接时解析主机名;1,mysqld仅使用IP编号。
skip_name_resolve = 1
#说明是否数据目录所在的文件系统对文件名的大小写敏感。1说明对文件名的大小写不敏感。
lower_case_table_names=1
#在MySQL暂时停止回答新请求之前的短时间内可以堆叠多少个请求。仅当您期望在短时间内有大量连接时,才需要增加此数量。
back_log = 1024
#指定MySQL允许的最大连接进程数。如果在访问论坛时经常出现Too Many Connections的错误提示,则需要增大该参数值。
max_connections = 10240
#如果MySQL服务器连续接收到来自同一主机的请求且都被拒绝,次数超过max_connect_errors的设定值时,MySQL服务器就会阻止这台主机后续的所有请求。
max_connect_errors = 1000000
#表文件描述符的缓存大小。
table_open_cache = 20480
#可以存储在定义高速缓存中的表定义(来自文件)的数量 。
table_definition_cache = 20480
#打开表缓存实例的数量。
table_open_cache_instances = 64
#每个线程的堆栈大小。
thread_stack = 512K
#跳过外部锁定。如果是单服务器环境,则将其禁用即可,如果是多服务器环境,则注释掉这一行即可。
external-locking = FALSE
#限制server接受的数据包大小。
max_allowed_packet = 32M
#每个必须执行排序的会话都会分配此大小的缓冲区。
sort_buffer_size = 4M
#用于普通索引扫描,范围索引扫描和不使用索引的联接的缓冲区的最小大小,从而执行全表扫描。
join_buffer_size = 4M
#服务器应缓存多少线程以供重用。
thread_cache_size = 15360
#内部内存临时表的最大大小。
tmp_table_size = 32M
#此变量设置MEMORY允许用户创建的表增长到的最大大小。变量的值用于计算MEMORY表MAX_ROWS值。
max_heap_table_size = 32M
#此变量指定尝试获取元数据锁定的超时(以秒为单位)。
lock_wait_timeout = 3600
#此变量确定服务器对列中的默认值和NULL-value处理启用某些非标准行为TIMESTAMP。
explicit_defaults_for_timestamp = 1
#每个必须执行排序的会话都会分配此大小的缓冲区。
sort_buffer_size = 33554432
slow_query_log_file 可以根据实际磁盘挂载的目录进行调整
log-bin 可以根据实际磁盘挂载的目录进行调整
log-error 可以根据实际磁盘挂载的目录进行调整
long_query_time 俗称定义慢sql的标准,可以根据实际项目定义具体标准
log_throttle_queries_not_using_indexes需要log_queries_not_using_indexes启用
expire_logs_days Binlog 自动清理时间
max_binlog_cache_size 推荐的最大值为4GB。这是由于MySQL当前无法使用大于4GB的二进制日志位置。
binlog_format 在MySQL 5.7.7和更高版本中,默认值为ROW。
sync_binlog=1:启用在提交事务之前将二进制日志同步到磁盘。这是最安全的设置,但由于磁盘写入次数增加,可能会对性能产生负面影响。
sync_binlog=0:禁用MySQL服务器将二进制日志同步到磁盘的功能。取而代之的是,MySQL服务器依靠操作系统不时地将二进制日志刷新到磁盘上,就像处理其他任何文件一样。此设置提供最佳性能,但是在电源故障或操作系统崩溃的情况下,服务器可能提交了尚未同步到二进制日志的事务。
sync_binlog=N,其中N的值不是0或1:是N二进制日志提交组已收集之后,二进制日志将同步到磁盘 。在电源故障或操作系统崩溃的情况下,服务器可能提交了尚未刷新到二进制日志的事务。由于磁盘写入次数的增加,此设置可能会对性能产生负面影响。较高的值可以提高性能,但会增加数据丢失的风险。
为了在InnoDB与事务一起使用的复制设置中获得最大的持久性和一致性,请使用以下设置:sync_binlog=1。
########log settings########
#慢查询日志文件的名称
slow_query_log_file = /data/mysql/mysql3306/slow.log
#错误日志输出目标。如果目标是控制台,则值为stderr。否则,目标是文件,log_error值是文件名。
log-error = /data/mysql/mysql3306/error.log
#启用二进制日志记录。启用二进制日志记录后,服务器会将所有更改数据的语句记录到二进制日志中,该日志用于备份和复制。
log-bin = /data/mysql/mysql3306/logs/mybinlog
#是否启用慢速查询日志。该值可以是0(或OFF)以禁用日志,也可以是 1(或 ON)以启用日志。
slow_query_log = 1
#此变量控制写入错误日志的消息以及通常写入文件的查询日志和慢速查询日志消息中时间戳的时区。设置为SYSTEM(本地系统时区)。
log_timestamps = SYSTEM
#如果查询所花的时间超过许多秒,则服务器将增加Slow_queries状态变量,如果启用了慢查询日志,则查询将记录到慢查询日志文件中。俗称定义慢sql的标准
long_query_time = 1
#如果在启用慢查询日志的情况下启用此变量,则会记录预期将检索所有行的查询。
log_queries_not_using_indexes =1
#如果 log_queries_not_using_indexes启用,该变量将限制每分钟可写入慢速查询日志的此类查询的数量。
log_throttle_queries_not_using_indexes = 60
#检查少于此行数的查询不会记录到慢查询日志中。
min_examined_row_limit = 100
#开启后,在写入慢速查询日志的语句中包括慢速管理语句,包括ALTER TABLE, ANALYZE TABLE, CHECK TABLE, CREATE INDEX, DROP INDEX, OPTIMIZE TABLE,和 REPAIR TABLE。
log_slow_admin_statements = 1
#启用慢速查询日志后,此变量将启用日志记录,以记录long_query_time在从属服务器上执行了超过几秒钟的查询 。
log_slow_slave_statements = 1
#binlog7天自动清理
expire_logs_days = 7
#是否对错误日志生成其他警告消息。
log_warnings = 1
#在事务期间,用于保存对二进制日志的更改的缓存的大小。
binlog_cache_size = 4M
#如果事务需要的内存字节数超过此数量,则服务器将生成多语句事务,而该语句需要的存储数超过“max_binlog_cache_size”字节。
max_binlog_cache_size = 4G
#如果对二进制日志的写入导致当前日志文件的大小超过此变量的值,则服务器将旋转二进制日志(关闭当前文件并打开下一个日志)。
max_binlog_size = 1G
#启用后,此变量使主服务器在二进制日志中为每个事件写入一个校正和。
binlog_checksum = 1
#此变量设置二进制日志格式,并且可以是任何一个STATEMENT,ROW或MIXED。
binlog_format = row
#控制MySQL服务器将二进制日志同步到磁盘的频率。
sync_binlog = 1
如果你不搭建主从集群可以跳过这项。
########replication settings########
#服务器ID。在主服务器和每个从属服务器上,必须设置server_id系统变量以在1到2 32 − 1 的范围内建立唯一的复制ID 。
server-id = 213306
#此变量的设置确定从属服务器是将主服务器状态和连接信息记录到FILE(master.info)还是TABLE (mysql.slave_master_info)上。仅当没有复制线程正在执行时,才能更改此变量的值。
master_info_repository = TABLE
#该变量确定从站在继电器日志中的位置是写入FILE(relay-log.info)还是写入TABLE(mysql.slave_relay_log_info)。仅当没有复制线程正在执行时,才能更改此变量的值。
relay_log_info_repository = TABLE
#控制是否启用基于GTID的日志记录以及日志可以包含的事务类型。
gtid_mode = on
#根据此变量的值,服务器通过仅允许执行可以使用GTID安全记录的语句来实现GTID一致性。
enforce-gtid-consistency = on
#从服务器从主服务器收到的更新是否应记录到从服务器自己的二进制日志中。
log_slave_updates = on
根据此变量的值,服务器通过仅允许执行可以使用GTID安全记录的语句来实现GTID一致性。
enforce_gtid_consistency = 1
#中继日志文件的基本名称。
relay_log = relay.log
#如果启用,此变量将在服务器启动后立即启用自动中继日志恢复。
relay_log_recovery = 1
#一旦不再需要中继日志文件,则禁用或启用它们的自动清除。
relay-log-purge = 1
#此变量控制MySQL启动或重新启动时在搜索GTID期间如何迭代二进制日志文件。
binlog_gtid_simple_recovery = 1
#通常,当从属服务器发生错误时,复制会停止,这使您有机会手动解决数据中的不一致问题。
slave_skip_errors = ddl_exist_errors
#在为基础行的日志记录和复制准备副本行时,此变量控制如何在行中搜索匹配项,特别是是否使用哈希扫描。
slave-rows-search-algorithms = 'INDEX_SCAN,HASH_SCAN'
innodb_undo_directory 可以根据实际磁盘挂载的目录进行调整
innodb_buffer_pool_size 如果机器内存较低,可以将此参数调低。参数是动态的,它允许您在不重新启动服务器的情况下调整缓冲池的大小。
innodb_buffer_pool_instances 此选项仅在设置innodb_buffer_pool_size为1GB或更大时才生效 。总缓冲池大小在所有缓冲池之间分配。为了获得最佳效率,指定的组合 innodb_buffer_pool_instances 和innodb_buffer_pool_size ,使得每个缓冲池实例是至少为1GB。
innodb_log_file_size 通常,日志文件的总大小应足够大,以使服务器可以消除工作负载活动中的高峰和低谷,这通常意味着有足够的重做日志空间来处理一个小时以上的写活动。值越大,缓冲池中需要的检查点刷新活动越少,从而节省了磁盘I / O。
innodb_io_capacity、innodb_io_capacity_max 根据服务器IOPS能力适当调整,一般配普通SSD盘的话,可以调整到 10000 - 20000,配置高端PCIe SSD卡的话,则可以调整的更高,比如 50000 - 80000
innodb_lru_scan_depth 小于默认值( 1024)的设置通常适用于大多数工作负载。高于必要值的值可能会影响性能。仅在典型工作负载下具有备用I / O容量时,才考虑增加该值。相反,如果写密集型工作负载使您的I / O容量饱和,请减小该值,尤其是在大型缓冲池的情况下。
innodb_status_output、innodb_status_output_locks 开启可能会导致log-error文件增长较快
########innodb settings########
#InnoDB创建撤消表空间的路径。通常用于将撤消日志放置在其他存储设备上。
innodb_undo_directory = /data/mysql/mysql3306/data/undolog
#磁盘上内部临时表的存储引擎。允许的值为MYISAM和INNODB (默认值)。
internal_tmp_disk_storage_engine = InnoDB
#指定InnoDB表的大小。
innodb_page_size = 8192
#innodb_buffer_pool_chunk_size定义InnoDB缓冲池大小调整操作的块大小
innodb_buffer_pool_size = 40960m
# InnoDB 池缓冲划分为的区域数。
innodb_buffer_pool_instances = 4
#指定在MySQL服务器启动时,通过加载先前保存的相同页面来自动预热InnoDB 缓冲池。
innodb_buffer_pool_load_at_startup = 1
#指定在关闭MySQL服务器时是否记录InnoDB缓冲池中缓存的页面,以缩短下次重启时的预热过程。
innodb_buffer_pool_dump_at_shutdown = 1
#定义InnoDB系统表空间数据文件的名称,大小和属性 。
innodb_data_file_path = ibdata1:1G:autoextend
#每秒钟写入并刷新日志N。。
innodb_flush_log_at_trx_commit = 1
#InnoDB 用于写入磁盘上的日志文件的缓冲区的大小。
innodb_log_buffer_size = 32M
#在每个字节大小日志文件在日志组。
innodb_log_file_size = 1G
#日志文件中日志组数量,InnoDB以循环方式写入文件。
innodb_log_files_in_group = 4
#定义撤消表空间的阈值大小。
innodb_max_undo_log_size = 4G
#所使用的撤消表空间的InnoDB数量。
innodb_undo_tablespaces = 95
#变量定义了可用于InnoDB后台任务的IOPS,例如从缓冲池刷新页面和合并来自更改缓冲区的数据。
innodb_io_capacity = 2000
#如果刷新较慢,则InnoDB可以比innodb_io_capacity变量定义更高的IOPS更积极地进行刷新。
innodb_io_capacity_max = 4000
#0为遵守innodb_io_capacity定义 1为不遵守innodb_io_capacity定义 。
innodb_flush_sync = 0
#指定是否冲洗从一个页面InnoDB 缓冲池也可以清空其他脏页在相同的程度。
innodb_flush_neighbors = 0
#一个影响缓冲池刷新操作的算法和启发式方法的参数。
innodb_lru_scan_depth = 4000
#InnoDB 事务在放弃之前等待行锁定的时间长度(以秒为单位)。
innodb_lock_wait_timeout = 5
#写入操作的I / O线程数 InnoDB。
innodb_write_io_threads = 8
#读取操作的I / O线程数 InnoDB。
innodb_read_io_threads = 8
#专用于InnoDB清除操作的后台线程数 。
innodb_purge_threads = 4
#从缓冲池实例中刷新脏页面的页面清洁程序线程数。
innodb_page_cleaners = 4
#InnoDB尝试从缓冲池刷新数据,使脏页百分比不超过此值。
innodb_max_dirty_pages_pct = 50
#定义用于将数据刷新到InnoDB数据文件和日志文件的方法,这会影响I/O吞吐量。
innodb_flush_method = O_DIRECT
#指定如何生成和验证存储在表空间的磁盘块中的校验。
innodb_checksum_algorithm = crc32
#InnoDB 默认情况下,仅回滚事务超时上的最后一条语句。
innodb_rollback_on_timeout = 1
#当启用该选项,所有信息死锁在InnoDB用户交易被记录在 mysqld 错误日志。
innodb_print_all_deadlocks = 1
#当innodb_file_per_table启用时,在文件的每个表的表空间默认创建的表。
innodb_file_per_table = 1
#指定在表的在线DDL操作期间使用的临时日志文件的大小的上限(以字节为单位)InnoDB。
innodb_online_alter_log_max_size = 4G
#仅当优化器统计信息配置为非持久性时,此选项才适用 。
innodb_stats_on_metadata = 0
#InnoDB可以在从磁盘读取的所有表空间页上使用校验和验证,以确保对硬件故障或损坏的数据文件具有额外的容错能力。
innodb_checksums = 1
#定义所使用的回滚段数 InnoDB。
innodb_undo_logs = 128
##启用InnoDB的status file,便于管理员查看以及监控等
innodb_status_file = 1
#启用或禁用标准InnoDBMonitor的定期输出。
innodb_status_output = 0
#启用或禁用InnoDB锁定监视器
innodb_status_output_locks = 0
#启用此选项后InnoDB,使用DYNAMIC 或 COMPRESSED 行格式的表 允许长度超过767字节(最大3072字节)的索引键前缀 。
innodb_large_prefix = 1
#InnoDB尝试使内部并发的操作系统线程数保持InnoDB小于或等于此变量给定的限制(InnoDB使用操作系统线程来处理用户事务)值0(默认值)被解释为无限并发(不进行并发检查)
innodb_thread_concurrency = 0
#InnoDB线程在挂起线程之前 等待 互斥量释放的次数。
innodb_sync_spin_loops = 100
#自旋锁定的 两次轮询之间的最大延迟
innodb_spin_wait_delay = 30
#指定MySQL可同时打开.ibd文件的最大个数,最小为10,默认300。此选项只针对InnoDB表打开的.ibd文件描述符,独立于open_files_limit。
innodb_open_files = 655350
#当innodb_strict_mode启用时,InnoDB将返回错误,而不是警告了一定的条件。
innodb_strict_mode = 1
#指定在创建InnoDB索引期间用于对数据进行排序的排序缓冲区的大小。
innodb_sort_buffer_size = 67108864
#innodb monitor
innodb_monitor_enable="module_innodb"
innodb_monitor_enable="module_server"
innodb_monitor_enable="module_dml"
innodb_monitor_enable="module_ddl"
innodb_monitor_enable="module_trx"
innodb_monitor_enable="module_os"
innodb_monitor_enable="module_purge"
innodb_monitor_enable="module_log"
innodb_monitor_enable="module_lock"
innodb_monitor_enable="module_buffer"
innodb_monitor_enable="module_index"
innodb_monitor_enable="module_ibuf_system"
innodb_monitor_enable="module_buffer_page"
innodb_monitor_enable="module_adaptive_hash"
vim /etc/my.cnf
复制粘贴下面的配置
[client]
user=root
password=123456
port = 3306
socket = /data/mysql/mysql3306/data/mysql.sock
[mysql]
prompt="\u@dev-data-01 \R:\m:\s [\d]> "
no-auto-rehash
default-character-set=utf8mb4
[mysqld]
########basic settings########
user = mysql
port = 3306
basedir = /usr/local/mysql
datadir = /data/mysql/mysql3306/data
socket = /data/mysql/mysql3306/mysql.sock
secure_file_priv=/data/mysql/
performance_schema = 1
character_set_server=utf8mb4
open_files_limit = 655350
transaction_isolation = READ-COMMITTED
interactive_timeout = 31536000
wait_timeout = 31536000
skip_name_resolve = 1
lower_case_table_names=1
back_log = 1024
max_connections = 10240
max_connect_errors = 1000000
table_open_cache = 20480
table_definition_cache = 20480
table_open_cache_instances = 64
thread_stack = 512K
external-locking = FALSE
max_allowed_packet = 32M
sort_buffer_size = 4M
join_buffer_size = 4M
thread_cache_size = 15360
tmp_table_size = 32M
max_heap_table_size = 32M
lock_wait_timeout = 3600
explicit_defaults_for_timestamp = 1
sort_buffer_size = 33554432
########log settings########
slow_query_log_file = /data/mysql/mysql3306/slow.log
log-error = /data/mysql/mysql3306/error.log
log-bin = /data/mysql/mysql3306/logs/mybinlog
slow_query_log = 1
log_timestamps = SYSTEM
long_query_time = 1
log_queries_not_using_indexes =1
log_throttle_queries_not_using_indexes = 60
min_examined_row_limit = 100
log_slow_admin_statements = 1
log_slow_slave_statements = 1
expire_logs_days = 7
log_warnings = 1
binlog_cache_size = 4M
max_binlog_cache_size = 4G
max_binlog_size = 1G
binlog_checksum = 1
binlog_format = row
sync_binlog = 1
########replication settings########
server-id = 213306
master_info_repository = TABLE
relay_log_info_repository = TABLE
gtid_mode = on
enforce-gtid-consistency = on
log_slave_updates = on
enforce_gtid_consistency = 1
relay_log = relay.log
relay_log_recovery = 1
relay-log-purge = 1
binlog_gtid_simple_recovery = 1
slave_skip_errors = ddl_exist_errors
slave-rows-search-algorithms = 'INDEX_SCAN,HASH_SCAN'
########innodb settings########
innodb_undo_directory = /data/mysql/mysql3306/data/undolog
internal_tmp_disk_storage_engine = InnoDB
innodb_page_size = 8192
innodb_buffer_pool_size = 40960m
innodb_buffer_pool_instances = 4
innodb_buffer_pool_load_at_startup = 1
innodb_buffer_pool_dump_at_shutdown = 1
innodb_data_file_path = ibdata1:1G:autoextend
innodb_flush_log_at_trx_commit = 1
innodb_log_buffer_size = 32M
innodb_log_file_size = 1G
innodb_log_files_in_group = 4
innodb_max_undo_log_size = 4G
innodb_undo_tablespaces = 95
innodb_io_capacity = 2000
innodb_io_capacity_max = 4000
innodb_flush_sync = 0
innodb_flush_neighbors = 0
innodb_lru_scan_depth = 4000
innodb_lock_wait_timeout = 5
innodb_write_io_threads = 8
innodb_read_io_threads = 8
innodb_purge_threads = 4
innodb_page_cleaners = 4
innodb_max_dirty_pages_pct = 50
innodb_flush_method = O_DIRECT
innodb_checksum_algorithm = crc32
innodb_rollback_on_timeout = 1
innodb_print_all_deadlocks = 1
innodb_file_per_table = 1
innodb_online_alter_log_max_size = 4G
innodb_stats_on_metadata = 0
innodb_checksums = 1
innodb_undo_logs = 128
innodb_status_file = 1
innodb_status_output = 0
innodb_status_output_locks = 0
innodb_large_prefix = 1
innodb_thread_concurrency = 0
innodb_sync_spin_loops = 100
innodb_spin_wait_delay = 30
innodb_open_files = 655350
innodb_strict_mode = 1
innodb_sort_buffer_size = 67108864
innodb_monitor_enable="module_innodb"
innodb_monitor_enable="module_server"
innodb_monitor_enable="module_dml"
innodb_monitor_enable="module_ddl"
innodb_monitor_enable="module_trx"
innodb_monitor_enable="module_os"
innodb_monitor_enable="module_purge"
innodb_monitor_enable="module_log"
innodb_monitor_enable="module_lock"
innodb_monitor_enable="module_buffer"
innodb_monitor_enable="module_index"
innodb_monitor_enable="module_ibuf_system"
innodb_monitor_enable="module_buffer_page"
innodb_monitor_enable="module_adaptive_hash"
配置环境变量 vim /etc/profile
export PATH=/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin:/usr/local/mysql/bin
加载配置文件
shell> cd /usr/local/mysql
shell> bin/mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql/ --datadir=/data/mysql/mysql3306/data/ --user=mysql --initialize
shell> cp support-files/mysql.server /etc/init.d/mysql.server
初始化数据库(为了安全管理,root账号只能本机登陆)
shell> /etc/init.d/mysql.server start/stop
#启动/关闭mysql
shell> cat /data/mysql/mysql3306/data/error.log|grep pass
#查询的密码是第一次登陆的密码
mysql -u root -p
#密码为cat到的密码
root@dev-data-01 15:49: [(none)]> set password='123456';
#进入数据库第一次需要修改密码
添加超级管理员并且支持远程登陆
GRANT ALL PRIVILEGES ON *.* TO 'admin'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
flush privileges;
有建议或疑问欢迎留言
mysql官方文档
版权声明:
原创不易,洗文可耻。除非注明,本博文章均为原创,转载请以链接形式标明本文地址。
号只能本机登陆)
shell> /etc/init.d/mysql.server start/stop
#启动/关闭mysql
shell> cat /data/mysql/mysql3306/data/error.log|grep pass
#查询的密码是第一次登陆的密码
mysql -u root -p
#密码为cat到的密码
root@dev-data-01 15:49: [(none)]> set password='123456';
#进入数据库第一次需要修改密码
添加超级管理员并且支持远程登陆
GRANT ALL PRIVILEGES ON *.* TO 'admin'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
flush privileges;
有建议或疑问欢迎留言
mysql官方文档
版权声明:
原创不易,洗文可耻。除非注明,本博文章均为原创,转载请以链接形式标明本文地址。